Tips for Reactjs ShouldComponentUpdate() sẽ check giá trị thay đổi để render giao diện cho component hay không. PureComponent chỉ render lại giao diện khi Props,State thay đổi. Còn Component thường thì luôn thay đổi khi dùng hàm set lại Props,State mà giá set lại k cần biết có khác với trước k. React Router có thể dùng component và... Xem thêm
Tips for Laravel 8
Tips for Laravel 8 419 PAGE EXPIRED Lỗi này do gọi request mà không có gửi kèm @csrf $user = User::where([])->firstOrFail(); sẽ trả về dòng đầu tiên; vậy nên khi dùng $user = User::where($request->only(['name','email']))->firstOrFail(); người dùng cố tình không truyền tham số nam, email sẽ vẫn có kết quả. Customize 404 error php artisan vendor:publish --tag=laravel-errors Không dùng HashRouter(dùng... Xem thêm
Các kiến thức nền tảng lập trình laravel framework
Các kiến thức nền tảng lập trình laravel framework Hướng dẫn cài đặt laravel Framework Cài global laravel trên mac : composer global require laravel/installer sudo nano ~/.bashrc sau đó soạn export PATH="$HOME/.composer/vendor/bin:$PATH" Chạy source ~/.bashrc Cài global laravel trên ubuntu Giống mac nhưng là 2 dòng dưới: export PATH="$PATH:~/.config/composer/vendor/bin" alias laravel='~/.config/composer/vendor/bin/laravel' sudo composer create-project --prefer-dist laravel/laravel testlaravel Cấu hình... Xem thêm
ERP Project manager
ERP Project manager Implementing a New ERP System why do we need ERP? why ERP is required? Xem thêm
Hướng dẫn học online lớp 7A/15 trường THCS Hoàng Hoa Thám
Hướng dẫn học online: a. Bước 1: Đăng ký tài khoản gmail trong mail.google.com(Nếu chưa biết vui lòng tham khảo cách tạo gmail) b. Bước 2: Sau khi đăng nhập vào trang https://google.com theo email và mật khẩu đã tạo thành công bạn chỉ việc nhấn vào từng môn học theo thời khoá biểu, thời gian cụ thể được liệt... Xem thêm
Người từ tỉnh khác qua sân bay cát bi đi các tỉnh khác không cần phải giấy xác nhận địa phương chỉ cần có vé máy bay
Người từ tỉnh khác qua sân bay cát bi đi các tỉnh khác không cần phải giấy xác nhận địa phương chỉ cần có vé máy bay Theo tổ phản ứng nhanh người ở tỉnh khác qua sân bay cát bi đi các tỉnh khác chỉ cần xuất trình vé máy bay thay giấy xác nhận của địa phương. [caption... Xem thêm
Sai lầm khi xử trí bỏng
Xử trí bỏng Thoa kem đánh răng, nước mắm lên vết bỏng càng làm tăng độ bỏng da, tạo điều kiện cho vi khuẩn xâm nhập vết thương. Theo bác sĩ Lê Vi Anh, Khoa Da liễu - Thẩm mỹ da, Bệnh viện Đại học Y dược TP HCM, 4 nhóm nguyên nhân gây bỏng gồm: bỏng do nhiệt, bỏng... Xem thêm
Công bố mẫu thẻ căn cước công dân gắn chip
Mẫu thẻ căn cước công dân gắn chip Chip điện tử được gắn ở mặt sau thẻ căn cước sẽ lưu trữ thông tin cơ bản của công dân. Bộ trưởng Công an vừa ký ban hành Thông tư số 06/2021 quy định cụ thể về hình dáng, kích thước, nội dung, quy cách, ngôn ngữ khác, chất liệu thẻ... Xem thêm
Hai người ở TP.HCM bị nhồi máu cơ tim lúc sáng sớm
Nhồi máu cơ tim lúc sáng sớm Ra ngoài lúc sáng sớm, nhiệt độ xuống thấp, hai bệnh nhân ở TP.HCM đột ngột xuất hiện cơn đau thắt ngực kèm khó thở dữ dội. Ngày 25/1, bác sĩ Hồ Dũng Tiến, Trưởng khoa Tim mạch 1, Bệnh viện Nguyễn Trãi (TP.HCM), cho biết đơn vị này vừa can thiệp kịp... Xem thêm
Chứng loạn thần
Bệnh loạn thần Sự rối loạn thần kinh ở người bệnh loạn thần có thể khiến người bệnh tự làm tổn thương chính bản thân mình hoặc người khác, đây là căn bệnh cực kỳ nguy hiểm cần được điều trị đúng phác đồ và người bệnh phải nhận được sự quan tâm, chăm sóc đặc biệt. 1. Bệnh loạn... Xem thêm
Cao huyết áp: Triệu chứng, nguyên nhân và cách điều trị
Cao huyết áp là bệnh lý tim mạch nguy hiểm được xem như “kẻ giết người thầm lặng” vì toàn bộ sự tiến triển của bệnh thường diễn ra trong âm thầm không có triệu chứng. Hiện nay Việt Nam có khoảng 12 triệu người mắc phải, nghĩa là trung bình cứ 5 người trưởng thành thì có 1 người... Xem thêm
Tổng giám đốc Công ty Nguyễn Kim bị truy nã
TP HCM Phạm Nhật Vinh, Tổng giám đốc Công ty Nguyễn Kim, bị truy nã do "đã bỏ trốn khi bị phát hiện sai phạm" trong việc bán 9 triệu cổ phần của Sadeco. Trong bản kết luận điều tra vụ án được công bố ngày 12/1, Công an TP HCM cho rằng quá trình làm rõ sai phạm việc bán... Xem thêm
Đất ở hẻm 123 Mạc Đĩnh Chi, P2, Tp. Bảo Lộc
Đất ở hẻm 123 Mạc Đĩnh Chi, P2, Tp. Bảo Lộc DT: 5mx22m Đất chính chủ, Sổ hồng View đẹp, thoáng, đất bằng phẳng, xung quanh là khu dân cư. Đất nông nghiệp Giá: 695tr Liên hệ : Trần Gia Linh 0838822922 [caption id="attachment_55" align="alignnone" width="225"] Đất phường 2 Tp Bảo Lộc[/caption] Nhà đất Phường 2,Tp.Bảo Lộc [caption id="attachment_54"... Xem thêm
Loại camera nào giúp đảm bảo an ninh?
Camera có dây xuất hiện trước camera không dây nhưng chưa chắc đã lạc hậu hơn trên phương diện đảm bảo an ninh. Trước hết, cần phân biệt ba loại camera an ninh: loại có dây (kết nối với nguồn điện và Internet bằng dây), loại không dây (kết nối với nguồn điện bằng dây, kết nối mạng bằng Wifi),... Xem thêm
Giảm một nửa lệ phí làm căn cước công dân gắn chip
Người dân chuyển đổi từ chứng minh nhân dân sang thẻ căn cước gắn chip hoặc làm thẻ mới được giảm 50% lệ phí. Theo Thông tư mới của Bộ Tài chính, từ nay đến hết tháng 6/2021, khi người dân chuyển từ chứng minh nhân dân (CMND) 9 số hoặc 12 số sang thẻ căn cước công dân thì... Xem thêm
Interview Questions Behavioural Interview Question Tell me about a time when you worked effectively under pressure Give me an example of how you worked on team describe a time when you had to deal with a very upset customer have you ever made a mistake ? How did you handle it Xem thêm
làm việc với Git
làm việc với Git git --version git init git status git add . cho tất cả các tập tin git add [tenfile1][tenfile2] cho các file cụ thể Tạo repository trên github sau đó tạo remote trên máy với github git commit -m “add the first time” git remote add origin git remote add gitname https://github.com/xxx/gitname.git git push gitname master... Xem thêm
ShouldComponentUpdate() sẽ check giá trị thay đổi để render giao diện cho component hay không.
PureComponent chỉ render lại giao diện khi Props,State thay đổi. Còn Component thường thì luôn thay đổi khi dùng hàm set lại Props,State mà giá set lại k cần biết có khác với trước k.
React Router có thể dùng component và render Route động và nestedRoute
this.forceUpdate(); Luôn render lại giao diện thử test với PureComponent
$user = User::where([])->firstOrFail(); sẽ trả về dòng đầu tiên;
vậy nên khi dùng
$user = User::where($request->only([‘name’,’email’]))->firstOrFail(); người dùng cố tình không truyền tham số nam, email sẽ vẫn có kết quả.
Customize 404 error
php artisan vendor:publish –tag=laravel-errors
Không dùng HashRouter(dùng BrowserRouter)
Để React Router luôn chạy khi refresh đường link bằng cách chỉnh file lỗi về file mà Route chính đó gọi react ở đây ví dụ là appreact.blade.php ta chỉnh lại bỏ nội dung trong 404.blade.php và sửa thành @include(‘appreact’)
Nếu dùng HashRouter thì luôn chạy khi refresh hoặc nhập trực tiếp từ link
Route::get(‘/{dir}/{file}’, function ($dir,$file) {
return view(‘pages.’.$dir.’.’.$file, [‘name’ => ‘hai’,’age’=>44,’users’=>[‘anh’,’hai’]]);
});
Route::get(‘/{leve1}/{level2}/{level3}/{file}’, function ($level1,$level2,$level3,$file) {
return view(‘pages.’.$level1.’.’.$level2.’.’.$level3.’.’.$file, [‘name’ => ‘hai’,’age’=>44,’users’=>[‘anh’,’hai’]]);
});
asset()
nếu không khai báo giá trị cho ASSET_URL (.env) mặc định sẽ lấy đường dẫn hiện thời ví dụ https://thoaimaichon.com/chuỗi trong hàm asset nếu chuỗi đó không chứa x:// còn nếu chứa x:// thì chỉ lấy chuỗi đó.
Hosting ứng dụng web PHP
https://laravel.thoaimaichon.com
các function sử dụng
{{str_replace(‘_’,’-‘,app()->getLocale())}}
With @extends you just extend your layout blade file.
With @include you include exactly view to the place where you write that code.
a. Bước 1: Đăng ký tài khoản gmail trong mail.google.com(Nếu chưa biết vui lòng tham khảo cách tạo gmail)
b. Bước 2: Sau khi đăng nhập vào trang https://google.com theo email và mật khẩu đã tạo thành công bạn chỉ việc nhấn vào từng môn học theo thời khoá biểu, thời gian cụ thể được liệt kê bên dưới để học:
Thoa kem đánh răng, nước mắm lên vết bỏng càng làm tăng độ bỏng da, tạo điều kiện cho vi khuẩn xâm nhập vết thương.
Theo bác sĩ Lê Vi Anh, Khoa Da liễu – Thẩm mỹ da, Bệnh viện Đại học Y dược TP HCM, 4 nhóm nguyên nhân gây bỏng gồm: bỏng do nhiệt, bỏng do điện, bỏng do hóa chất và bỏng do tia xạ (hồng ngoại và tử ngoại).
Trong đó nguyên nhân phổ biến thường gặp trong đời sống hàng ngày là do nhiệt, điện và hóa chất. Nguyên nhân do nhiệt có hai dạng. Bỏng nhiệt khô do lửa, kim loại, tiếp xúc vật nóng, bàn là, ống bô xe máy… Bỏng do nhiệt ướt có hơi nước nóng, nước sôi, dầu mỡ nấu sôi… Bỏng do hóa chất gồm axit sulfuric, bazơ, vôi nấu sôi…
“Cuối năm là thời điểm mọi người thường nấu nướng nhiều, dọn dẹp tổng vệ sinh nhà cửa… nên dễ gặp các tác nhân gây bỏng, cần hết sức cẩn thận”, bác sĩ Anh khuyến cáo.
Bỏng được chia thành 5 cấp độ.
Trong đó cấp độ một là bỏng bề mặt, chỉ lớp da ngoài bị tổn thương, đỏ da. Cấp độ hai là bỏng ở thượng bì da, cấp độ ba là bỏng ở trung bì, cấp độ 4 là bỏng toàn bộ da. Nặng nhất, bỏng cấp độ 5 là bỏng toàn bộ da, sâu xuống các mô dưới da. Bỏng được xác định là nguy hiểm khi bỏng diện tích 25% da ở cấp độ 1-3 và 10% da ở cấp độ 4, 5.
Những phương pháp dân gian làm mất thời gian vàng trong xử lý bỏng, nâng cấp độ bỏng cao hơn, có thể từ 1-2 lên 3-4. “Thường mọi người thoa kem đánh răng để làm mát dịu vết bỏng. Tuy nhiên trong kem đánh răng có tính kiềm nhẹ, chất kiềm này sẽ làm vết bỏng nặng hơn. Còn nước mắm chứa nhiều protein là môi trường thuận lợi để vi khuẩn sinh sôi, nảy nở”, bác sĩ Anh phân tích.
Bác sĩ Anh khuyên khi bị bỏng cần nhanh chóng loại bỏ tác nhân gây bỏng.
Tháo nhẫn, giày dép để làm thoáng vùng bỏng. Rửa sạch vùng bỏng, sau đó làm lạnh vùng bỏng ở nhiệt độ 10-25 độ trong 15-20 phút giúp giảm nhiệt độ trên bề mặt và giảm nhiệt độ đi xuống sâu các mô da. Dùng gạc sạch che vùng bỏng, sau đó đưa người bị nạn đến bệnh viện.
“Tuyệt đối không dội nước đá lạnh lên vùng da tổn thương sẽ làm tăng mức độ tổn thương và độ sâu vết bỏng”, thạc sĩ, bác sĩ Phan Thái Sơn – Phó trưởng Khoa Hồi sức tích cực, Bệnh viện Đại học Y Dược TP HCM, cho biết thêm.
Theo bác sĩ Sơn, dội nước đá lạnh lên vết bỏng là rất nguy hiểm. Nhiệt độ của nước đá thấp hơn nhiệt độ của cơ thể rất nhiều. Nếu bỏ nhiều đá, nhiệt độ nước có thể xuống gần 0 độ C. Trong khi đó, tại chỗ bị bỏng nhiệt độ có thể lên đến 45 đến 50 độ C. Do đó nếu dùng nước đá để hạ nhiệt độ nhanh sẽ làm tình trạng tổn thương bỏng nặng hơn.
được gắn ở mặt sau thẻ căn cước sẽ lưu trữ thông tin cơ bản của công dân.
Bộ trưởng Công an vừa ký ban hành Thông tư số 06/2021 quy định cụ thể về hình dáng, kích thước, nội dung, quy cách, ngôn ngữ khác, chất liệu thẻ căn cước công dân (CCCD) gắn chip và trách nhiệm của công an các đơn vị, địa phương trong việc sản xuất, cấp và quản lý mẫu thẻ.
Theo đó, CCCD mẫu mới hình chữ nhật, 4 góc được cắt tròn. Thẻ có chiều dài 85,6 mm, rộng 53,98 mm và dày 0,76 mm giống kích thước của mẫu thẻ căn cước mã vạch đang lưu hành.
Mặt trước và mặt sau CCCD gắn chip điện tử. Ảnh: Bộ Công an.
Các nội dung ở mặt trước thẻ gồm hình quốc huy đường kính 12 mm (thẻ cũ 14 mm). Ảnh chân dung của công dân được giữ nguyên kích thước 20×30 mm.
là các nội dung in trên thẻ như họ tên, ngày sinh, giới tính, quê quán hay quốc tịch đều được in song ngữ (gồm tiếng Việt và tiếng Anh).
Mặt trước của mẫu thẻ căn cước mới có phôi bảo an để chống làm giả. Mặt sau gồm thông tin cá nhân (được in song ngữ) giống với mẫu thẻ cũ, đặc điểm nhân dạng, thời gian cấp thẻ, chức danh của người có thẩm quyền cấp thẻ, dấu có hình quốc huy. Ngoài ra, mặt sau còn có 2 ô vân tay của ngón trỏ trái và ngón trỏ phải của người được cấp thẻ.
Chip điện tử được gắn ở mặt sau thẻ CCCD và lưu trữ thông tin cơ bản của công dân. Ngôn ngữ tiếng Anh là điều kiện để công dân Việt Nam sử dụng CCCD thay cho hộ chiếu (khi Việt Nam ký kết điều ước hoặc thỏa thuận quốc tế cho phép công dân nước ký kết được sử dụng CCCD thay cho việc sử dụng hộ chiếu trên lãnh thổ của nhau).
Theo Bộ Công an, CCCD đã được cấp trước ngày Thông tư số 06 có hiệu lực vẫn có giá trị sử dụng đến hết thời hạn theo quy định. Khi công dân có yêu cầu sẽ được đổi sang CCCD mới. Các loại giấy tờ có giá trị pháp lý đã phát hành có sử dụng thông tin từ CCCD được cấp trước ngày Thông tư số 06 có hiệu lực thi hành thì vẫn nguyên hiệu lực pháp luật.
Ra ngoài lúc sáng sớm, nhiệt độ xuống thấp, hai bệnh nhân ở TP.HCM đột ngột xuất hiện cơn đau thắt ngực kèm khó thở dữ dội.
Ngày 25/1, bác sĩ Hồ Dũng Tiến, Trưởng khoa Tim mạch 1, Bệnh viện Nguyễn Trãi (TP.HCM), cho biết đơn vị này vừa can thiệp kịp thời, cứu 2 bệnh nhân bị nhồi máu cơ tim.
Bệnh nhân đầu tiên là ông N.T.H. (65 tuổi, ngụ quận Bình Tân). Trước đó, khoảng 6h sáng 16/1, ông H. đang đi trên đường thì đột ngột lên cơn đau thắt ngực trái khiến bệnh nhân ngất xỉu. Sau khi được người đi đường đỡ dậy, ông H. bắt đầu nhận thức được xung quanh nhưng đau ngực trái dữ dội như bị bóp nghẹt.
Hai bệnh nhân may mắn được cứu sống sau cơn nhồi máu cơ tim cấp. Ảnh: BSCC.
Các cơn đau kéo dài và tăng dần nên bệnh nhân được gia đình đưa đi cấp cứu tại Bệnh viện Nguyễn Trãi.
Trường hợp thứ 2 là bệnh nhân T.T.H. (64 tuổi, ngụ quận 6). Ông H. cho biết sáng sớm, khi vừa ngủ dậy thì ngực trái đột ngột lên cơn đau thắt kèm khó thở dữ dội. Cơn đau kéo dài và ngày càng tăng dần từ xương ức lan xuống hai tay.
Bác sĩ Tiến cho biết cả 2 bệnh nhân đều hút thuốc lá rất nhiều. Bệnh nhân thứ 2 có tiền sử tăng huyết áp, đái tháo đường type II, rối loạn lipid máu. Lúc nhập viện, nhịp tim và huyết áp của 2 bệnh nhân xuống thấp, tính mạng nguy kịch.
“Các bác sĩ thăm khám và chẩn đoán ngay bệnh lý nhồi máu cơ tim cấp, nghĩ nhiều đến tắc nghẽn động mạch vành. Sau khi xử trí đặt stent tái thông động mạch vành tắc nghẽn, hai bệnh nhân đã ổn định”, bác sĩ Tiến chia sẻ.
Bác sĩ Tiến cho biết với bệnh nhân lớn tuổi, có tiền sử bệnh nền, hút thuốc lá nhiều, thời tiết lạnh là yếu tố nguy cơ gây nên nhồi máu cơ tim. Nguyên nhân là khi vào mùa lạnh, huyết áp thường tăng cao so với mùa hè khoảng 5 mmHg, khi nhiệt độ giảm xuống, các mạch máu co lại, huyết áp tăng cao nên dẫn đến các biến chứng tim mạch, đột quỵ.
Bác sĩ Tiến khuyến cáo trường hợp có yếu tố nguy cơ, đề kháng kém như người cao tuổi, khi thời tiết chuyển lạnh cần giữ ấm đầy đủ cho cơ thể. Người dân nên hạn chế ra ngoài khi nhiệt độ thấp. Khi có các dấu hiệu đột ngột chóng mặt, khó thở, đau nhói khó chịu vùng xương ức, đổ mồ hôi lạnh, nhịp tim bất thường, mọi người cần đến ngay cơ sở y tế có chuyên khoa tim mạch để điều trị kịp thời.
Sự rối loạn thần kinh ở người bệnh loạn thần có thể khiến người bệnh tự làm tổn thương chính bản thân mình hoặc người khác, đây là căn bệnh cực kỳ nguy hiểm cần được điều trị đúng phác đồ và người bệnh phải nhận được sự quan tâm, chăm sóc đặc biệt.
1. Bệnh loạn thần là gì?
Loạn thần được xếp vào nhóm bệnh lý rối loạn thần kinh nghiệm trọng, là tình trạng mà người bệnh không thể tự kiểm soát suy nghĩ của mình, không tự phán đoán hay suy nghĩ được việc mà bản thân đã và sẽ làm, người bệnh cũng sẽ không thể tự suy xét và điều khiển cảm xúc của bản thân như những người bình thường được.
Tùy vào từng trường hợp, nguyên nhân và biểu hiện rối loạn thần kinh, bệnh loạn thần phân thành từng loại cụ thể:
Tâm thần phân liệt: Người bệnh sẽ có những thay đổi trong hành vi và thường xuyên ảo tưởng, hoang tưởng, triệu chứng bệnh kéo dài trên 6 tháng và làm ảnh hưởng lớn đến công việc, học tập và các mối quan hệ của người bệnh.
Rối loạn phân liệt cảm xúc: Ở dạng này, người bệnh cũng sẽ có những triệu chứng giống như tâm thần phân liệt và có thêm các biểu hiện rối loạn thần kinh, lưỡng cực, khí sắc trầm trọng.
Rối loạn dạng phân liệt: Cũng giống như triệu chứng tâm thần phân liệt nhưng triệu chứng bệnh sẽ xuất hiện ngắn hơn.
Rối loạn loạn thần ngắn: Người bệnh sẽ có các hành vi loạn thần trong thời gian ngắn, nguyên nhân là do gặp phải stress, áp lực tâm lý, đối với dạng này, thời gian bị bệnh ngắn và hồi phục nhanh.
Rối loạn hoang tưởng: Đây là dạng bệnh nặng, người bệnh bị rối loạn thần kinh và sẽ không thể phân biệt được giữa thực tế và hoang tưởng.
Rối loạn loạn thần chia sẻ: Bị hoang tưởng và tin tưởng vào những điều mà người thân, người bạn bị hoang tưởng chia sẻ.
Rối loạn loạn thần do sử dụng chất kích thích
Rối loạn loạn thần thứ phát sau các bệnh khác: Người bệnh mắc rối loạn thần kinh do một bệnh lý não gây ra như chấn thương đầu hoặc khối u não.
Hoang tưởng paraphrenia: Đây là dạng bệnh loạn thần ở người già.
Thường xuyên ảo tưởng do tâm thần phân liệt
2. Biểu hiện nhận biết bệnh loạn thần
Người bệnh loạn thần sẽ bị rối loạn thần kinh và dẫn đến những biểu hiện chính là ảo tưởng, hoang tưởng và có hành vi suy nghĩ không sát thực tế, cụ thể:
Hoang tưởng
Người bệnh loạn thần, đặc biệt là bệnh loạn thần ở người già sẽ luôn có một niềm tin vào một điều gì đó mặc dù nó hoàn toàn trái ngược với thực tế. Người bệnh có thể bị hoang tưởng ảo giác hoặc hoang tưởng tự cao, hoang tưởng dạng cơ thể….
Ảo tưởng
Khi bị rối loạn thần kinh, người bệnh loạn thần sẽ sinh ra suy nghĩ ảo tưởng, nghĩa là có thể nghe thấy, nhìn thấy, cảm nhận hoặc ngửi thấy những điều vốn dĩ không tồn tại, không có thật.
Ngoài ra, một số dấu hiệu thường thấy khác khi mắc phải bệnh loạn thần ở người già bao gồm:
Suy nghĩ không rõ ràng.
Lời nói thiếu mạch lạc, lộn xộn.
Hành động bất thường.
Có những hành vi có thể gây nguy hiểm cho bản thân và người xung quanh.
Không thể tự vệ sinh cá nhân cho bản thân
Không có hứng thú với mọi hoạt động.
Gặp vấn đề trong các mối quan hệ.
Xuất hiện thái độ dửng dưng, lạnh nhạt, không cảm xúc.
Tâm trạng có sự thay đổi đột ngột, có thể là trầm cảm hoặc hưng phấn.
3. Nguyên nhân gây bệnh loạn thần
Cho đến hiện tại, y học vẫn chưa tìm ra được nguyên nhân chính xác gây bệnh loạn thần. Tuy nhiên, một số yếu tố được cho là làm gia tăng tình trạng bệnh bao gồm:
Yếu tố di truyền.
Do người bệnh có những sự thay đổi trong não.
Hormones/giấc ngủ: Thường gặp ở phụ nữ sau sinh.
Do tuổi tác.
Tuổi tác là một trong các nguyên nhân gây bệnh loạn thần
4. Chẩn đoán và điều trị bệnh loạn thần
Bác sĩ sẽ hỏi bệnh nhân một số câu hỏi và tiến hành kiểm tra cũng như tìm nguyên nhân có thể gây ra triệu chứng rối loạn thần kinh để chẩn đoán chính xác bệnh loạn thần ở người bệnh.
Ngoài ra, bệnh nhân có thể được chỉ định làm xét nghiệm máu, xét nghiệm hình ảnh học não (MRI não) để loại trừ một số bệnh thực thể hoặc nguyên nhân rối loạn do sử dụng chất kích thích.
Bệnh nhân khi được chẩn đoán mắc bệnh loạn thần thì phần lớn sẽ được điều trị bằng thuốc và trị liệu tâm lý:
Điều trị loạn thần bằng thuốc
Thuốc chống loạn thần là thuốc điều trị chính cho bệnh nhân loạn thần, mặc dù không thể điều trị dứt điểm hoàn toàn căn bệnh này nhưng có thể giúp kiểm soát hiệu quả các triệu chứng rối loạn thần kinh hay ảo tưởng, hoang tưởng ở người bệnh.
Hiện nay, một số loại thuốc chống loạn thần mới ít có tác dụng phụ và có khả năng giúp bệnh nhân cảm thấy dễ chịu hơn các loại thuốc cũ, bệnh nhân có thể dùng đường tiêm và chỉ 1 đến 2 lần/tháng, giúp trường hợp bệnh loạn thần ở người già dễ kiểm soát hơn vì không phải uống thuốc hàng ngày.
Biện pháp trị liệu tâm lý
Có thể điều trị bệnh loạn thần bằng các biện pháp trị liệu tâm lý, phần lớn người bệnh sẽ được điều trị ngoại trú, trường hợp nặng thì cần phải nhập viện để kiểm soát tình hình và hạn chế những hành vi không kiểm soát.
Bệnh loạn thần không gây ra nhiều biến chứng, tuy nhiên bệnh nếu không được điều trị đúng phác đồ thì có khả năng làm giảm chất lượng cuộc sống của người bệnh, về lâu dài, người bệnh sẽ không thể tự chăm sóc cho mình và dễ phát sinh thêm các bệnh khác.
Loạn thần là căn bệnh không thể phòng ngừa, tuy nhiên nếu được phát hiện càng sớm thì hiệu quả điều trị sẽ càng cao. Đối với những trường hợp có nguy cơ mắc bệnh loạn thần cao thì nên hạn chế sử dụng các chất kích thích, từ bỏ thói quen uống rượu bia để giúp ngăn ngừa và làm chậm quá trình tiến triển của bệnh.
Nếu có triệu chứng bất thường, bạn nên được thăm khám và tư vấn với bác sĩ chuyên khoa.
Cao huyết áp là bệnh lý tim mạch nguy hiểm được xem như “kẻ giết người thầm lặng” vì toàn bộ sự tiến triển của bệnh thường diễn ra trong âm thầm không có triệu chứng. Hiện nay Việt Nam có khoảng 12 triệu người mắc phải, nghĩa là trung bình cứ 5 người trưởng thành thì có 1 người mắc bệnh. Năm 2016, tỷ lệ này ở mức báo động đỏ với hơn 40% người lớn bị tăng huyết áp.
Vậy triệu chứng, nguyên nhân và cách điều trị bệnh cao huyết áp là gì? Thầy thuốc nhân dân, bác sĩ cao cấp Đoàn Dư Đạt, bệnh viện ĐKQT Vinmec Hạ Long sẽ giúp bạn giải đáp các câu hỏi này.
1. Cao huyết áp là bệnh gì?
Cao huyết áp (hay tăng huyết áp) là một bệnh lý mãn tính khi áp lực của máu tác động lên thành động mạch tăng cao. Huyết áp tăng cao gây ra nhiều áp lực cho tim (tăng gánh nặng cho tim) và là căn nguyên của nhiều biến chứng tim mạch nghiêm trọng như: Tai biến mạchmáunão, suy tim, bệnh tim mạch vành, nhồi máu cơ tim,…
Một số loại cao huyết áp chủ yếu, bao gồm:
Cao huyết áp vô căn (hay nguyên phát, bệnh tăng huyết áp): không có nguyên nhân cụ thể, chiếm đến 90% các trường hợp;
Tăng huyết áp thứ phát(Tăng huyết áp là triệu chứng của một số bệnh khác): Liên quan đến một số bệnh trên thận, động mạch, bệnh van tim và một số bệnh nội tiết;
Cao tăng huyết áp tâm thu đơn độc: Khi chỉ có huyết áp tâm thu tăng trong khi huyết áp tâm trương bình thường;
Tăng huyết áp khi mang thai, bao gồm tăng huyết áp thai kỳ và tiền sản giật: Cảnh báo một số nguy cơ tim mạch trong giai đoạn mang thai.
Cac huyết áp có thể gây ra nhiều biến chứng tim mạch nguy hiểm.
Khi mắc bệnh cao huyết áp, áp suất máu lưu thông trong các động mạch tăng cao, gây nhiều sức ép hơn đến các mô và khiến các mạch máu bị tổn hại dần theo thời gian.
2. Huyết áp cao là bao nhiêu?
Như đề cập ở trên, huyết áp là áp lực của máu lên thành động mạch. Huyết áp được xác định dựa trên 2 chỉ số (Huyết áp tâm thu/Huyết áp tâm trương):
Huyết áp tâm thu (ứng với giai đoạn tim co bóp tống máu đi): Có giá trị cao hơn do dòng máu trong động mạch lúc này đang được tim đẩy đi.
Huyết áp tâm trương (ứng với giai đoạn giãn nghỉ giữa hai lần đập liên tiếp của tim): Có giá trị thấp hơn do mạch máu lúc này không phải chịu áp lực tống máu từ tim.
Để trả lời cho vấn đề “Huyết áp cao là bao nhiêu”, hàng loạt các hướng dẫn điều trị của những quốc gia, hiệp hội và nhiều nhà khoa học hàng đầu về tim mạch trên thế giới đã được đưa ra. Việc chẩn đoán và chiến lược điều trị của các bác sĩ chuyên khoa tim mạch tại nước ta hiện nay thường tuân theo hướng dẫn điều trị cập nhật của Hiệp hội Tim mạch Châu Âu (ESC). Theo hướng dẫn mới cập nhật của ESC năm 2018, tùy vào mức độ nghiêm trọng, cao huyết áp được phân loại như sau:
Huyết áp tối ưu: Dưới 120/80 mmHg;
Huyết áp bình thường: Từ 120/80 mmHg trở lên;
Huyết áp bình thường cao: Từ 130/85 mmHg trở lên;
Tăng huyết áp độ 1: Từ 140/90 mmHg trở lên;
Tăng huyết áp độ 2: Từ 160/100 mmHg trở lên;
Tăng huyết áp độ 3: Từ 180/110 mmHg trở lên;
Cao huyết áp tâm thu đơn độc: Khi huyết áp tâm thu từ 140 mmHg trở lên, trong khi huyết áp tâm trương dưới 90 mmHg
Tiền tăng huyết áp khi:
Huyết áp tâm thu > 120 – 139mmHg và huyết áp tâm trương > 80-89mmHg.
Ngoài ra, theo Hiệp hội Tim mạch Việt Nam, huyết áp đạt dưới 120/80 mmHg được coi là mức bình thường. Khi huyết áp luôn ở mức từ 140/90 mmHg trở lên thì được xem là tình trạng tăng huyết áp.
3. Triệu chứng cao huyết áp
Đa phần các triệu chứng của cao huyết áp đều khá mờ nhạt. Trên thực tế, hầu hết các bệnh nhân tăng huyết áp đều không thể nhận thấy bất kỳ một dấu hiệu hoặc triệu chứng rõ ràng nào, mặc dù bệnh đã tiến triển khá nghiêm trọng. Một số ít bệnh nhân bị tăng huyết áp có thể biểu hiện một số triệu chứng thoáng qua như đau đầu, khó thở, hoặc hiếm hơn là chảy máu cam.
Triệu chứng bệnh cao huyết áp thường không rõ ràng, chỉ được phát hiện khi bệnh nhân đến khám định kỳ hoặc khám một bệnh khác.
Đúng như tên gọi mà nhiều nhà khoa học đã đặt cho căn bệnh: Cao huyết áp là “kẻ giết người thầm lặng”, những triệu chứng của bệnh đều không rõ ràng và hầu hết không xảy ra cho đến khi bệnh đã tiến triển đến giai đoạn rất nghiêm trọng. Lúc này, các biến chứng tim mạch có thể đột ngột xuất hiện và tước đi tính mạng bệnh nhân chỉ trong cái chớp mắt.
4. Nguyên nhân gây tăng huyết áp
Như đã đề cập, hầu hết các trường hợp tăng huyết áp đều không rõ nguyên nhân và được gọi là tăng huyết áp vô căn. Loại này thường là do di truyền, phổ biến hơn ở nam giới.
Bên cạnh đó, cao huyết áp thứ phát là hệ quả của một số bệnh lý như bệnh thận, bệnh tuyến giáp, u tuyến thượng thận hay tác dụng gây ra bởi thuốc tránh thai, thuốc cảm, cocaine, rượu bia, thuốc lá. Loại này chỉ chiếm khoảng 5 – 10% trên tổng số ca bệnh cao huyết áp. Điều trị dứt điểm các nguyên nhân thứ phát có thể giải quyết được bệnh. Đối với tăng huyết áp gây ra do tác dụng không mong muốn của thuốc, sau khi ngừng thuốc có thể mất chừng vài tuần để huyết áp ổn định lại về mức bình thường. Trẻ em, nhất là các trẻ dưới 10 tuổi, mắc cao huyết áp thứ phát thì nguyên nhân thường là do bệnh khác gây ra, điển hình như bệnh thận.
Tăng huyết áp thai kỳ là dạng tăng huyết áp đơn thuần nhưng thường xảy ra sau tuần thai thứ 20. Trong khi đó, tiền sản giật cũng xảy ra sau khi thai nhi được 12 tuần tuổi, nhưng kèm theo phù và có đạm trong nước tiểu. Nguyên nhân của các dạng tăng huyết áp trong thời kỳ mang thai này có thể là do thiếu máu trầm trọng, nhiều nước ối, mang thai con đầu lòng, đa thai, thai phụ trẻ dưới 20 tuổi hoặc cao trên 35 tuổi, tiền sử cao huyết áp hoặc đái tháo đường,…
5. Những ai có nguy cơ mắc cao huyết áp?
Sau đây là một số đối tượng phổ biến của bệnh cao huyết áp:
Người lớn tuổi: Hệ thống thành mạch máu không còn duytrì được độ đàn hồi như trước, dẫn đến cao huyết áp;
Giới tính: Tỷ lệ đàn ông dưới 45 tuổi mắc bệnh cao hơn so với phụ nữ, tuy nhiên phụ nữ sau mãn kinh lại có nhiều khả năng bị cao huyết áp hơn so với đàn ông cũng vào độ tuổi này;
Tiền sử gia đình: Nguy cơ mắc bệnh tăng huyết áp thường cao hơn đối với các thành viên trong gia đình (cha mẹ hoặc anh chị) có tiền sử mắc bệnh tim mạch.
Những yếu tố dưới đây làm tăng nguy cơ mắc bệnh cao huyết áp, bao gồm:
Thừa cân béo phì;
Lối sống tĩnh tại, lười vận động;
Ăn uống không lành mạnh;
Ăn quá nhiều muối;
Sử dụng lạm dụng rượu, bia;
Hút thuốc lá;
Căng thẳng thường xuyên.
6. Điều trị bệnh cao huyết áp
Mục tiêu điều trị cao huyết áp là để giữ cho huyết áp của bệnh nhân ổn định ở mức cho phép, thường là dưới 140/90 mmHg đối với mức huyết áp mục tiêu chung. Tuy nhiên, đối với bệnh nhân tăng huyết áp kèm theo các bệnh liên quan như đái tháo đường hoặc bệnh thận mãn tính, bác sĩ sẽ đề nghị một liệu trình điều trị nghiêm ngặt hơn để giữ cho huyết áp ổn định ở mức dưới 130/80 mmHg. Lưu ý, các mức huyết áp mục tiêu có thể khác nhau theo từng đối tượng bệnh nhân cụ thể. Sau đây là các phương pháp chữa trị cao huyết áp:
Các mức huyết áp mục tiêu có thể khác nhau theo từng đối tượng bệnh nhân cụ thể.
6.1. Thay đổi lối sống
Biện pháp không dùng thuốc bao giờ cũng chiếm một vai trò cực kỳ quan trọng trong liệu trình điều trị chung. Theo lời khuyên của các bác sĩ, bệnh nhân có thể kiểm soát huyết áp bằng cách:
Điều chỉnh chế độ ăn uống: Lành mạnh hơn và dùng ít muối (dưới 6g/ngày);
Tập thể dục đều đặn, vừa sức;
Cố gắng duy trì cân nặng lý tưởng, giảm cân theo hướng dẫn;
Ngừng hoặc hạn chế tối đa uống rượu, bỏ hút thuốc;
Tránh nhiễm lạnh đột ngột;
Kiểm soát tốt các bệnh liên quan;
Sử dụng thuốc điều trị cao huyết áp đúng theo hướng dẫn của bác sĩ;
Thường xuyên theo dõi sự thay đổi của huyết áp ngay tại nhà với máy đo thích hợp.
6.2. Thuốc điều trị cao huyết áp
Nếu như thay đổi lối sống không đem lại nhiều lợi ích trong việc cải thiện tình trạng bệnh, bác sĩ sẽ cân nhắc cho bệnh nhân sử dụng thuốc theo toa.
Mặc dù các phác đồ điều trị cao huyết áp đã được đưa ra và thử nghiệm rất nhiều lần. Tuy nhiên, trong suốt quá trình diễn tiến của bệnh, bác sĩ sẽ theo dõi và có thể thay đổi, tăng giảm liều, phối hợp thêm thuốc hoặc bỏ bớt thuốc cho đến khi xác định được phác đồ điều trị phù hợp nhất đối với bệnh nhân. Hãy lưu ý về tình hình sức khỏe trước và sau khi dùng thuốc để thông báo cho bác sĩ về các tác dụng không mong muốn trong khi dùng thuốc theo phác đồ. Dùng thuốc thường xuyên để bình ổn huyết áp. Điều trị tăng huyết áp là điều trị cả đời. Không tự ý ngừng điều trị, cần phải tham vấn bác sĩ chuyên khoa.
Bên cạnh đó, bệnh cao huyết áp còn có thể được kiểm soát tốt bằng các bài thuốc trị tăng huyết áp theo hướng dẫn của thầy thuốc đông y.
6.3. Điều trị cao huyết áp trong trường hợp khẩn cấp
Một số trường hợp cao huyết áp cấp cứu cần phải được chữa trị ngay lập tức tại phòng cấp cứu hoặc phòng chăm sóc đặc biệt, vì lúc này nguy cơ bệnh nhân tử vong là khá cao. Bệnh nhân có thể được thở oxy và dùng thuốc hạ huyết áp khẩn cấp để nhanh chóng cải thiện tình hình.
Hầu hết các bệnh tim mạch ở nước ta, đặc biệt là những bệnh lý mãn tính phổ biến như cao huyết áp, vấn đề tuân thủ điều trị luôn là điều khiến cho các bác sĩ đau đầu. Do việc điều trị thường phải phối hợp nhiều thuốc, dẫn đến việc bệnh nhân quên uống thuốc, hoặc có thuốc nhưng không uống, hoặc dùng thuốc không theo hướng dẫn của bác sĩ, hậu quả là hiệu quả điều trị tăng huyết áp không được cao. Chính vì vậy, bệnh nhân cần phải thật sự nghiêm túc trong việc chữa trị bệnh của chính bản thân mình, phối hợp tốt với bác sĩ để tối đa hóa hiệu quả điều trị.
TP HCM Phạm Nhật Vinh, Tổng giám đốc Công ty Nguyễn Kim, bị truy nã do “đã bỏ trốn khi bị phát hiện sai phạm” trong việc bán 9 triệu cổ phần của Sadeco.
Trong bản kết luận điều tra vụ án được công bố ngày 12/1, Công an TP HCM cho rằng quá trình làm rõ sai phạm việc bán 9 triệu cổ phần của Công ty CP phát triển Nam Sài Gòn (Sadeco, công ty con của Công ty Tân Thuận IPC, 100% vốn nhà nước) đã phát hiện ông Phạm Nhật Vinh vi phạm pháp luật.
Ông Phạm Nhật Vinh. Ảnh: NLD.
Theo điều tra, ngày 5/10/2017, Tề Trí Dũng (Tổng giám đốc IPC) với tư cách Chủ tịch HĐQT Sadeco ký hợp đồng hợp tác chiến lược với Công ty Nguyễn Kim. Theo đó, Sadeco sẽ phát hành 9 triệu cổ phần để tăng vốn điều lệ và bán toàn bộ cho Nguyền Kim với giá 40.000 đồng/cổ phần.
Giám đốc Công ty Nguyễn Kim có vai trò đại diện vốn tư nhân, được mời tham gia làm cổ đông chiến lược, thành viên HĐQT Sadeco. Ông này và các thành viên khác cùng bỏ phiếu thông qua việc phát hành 9 triệu cổ phần mà không thẩm định giá và đấu giá theo quy định. Hai tuần sau, Nguyễn Kim đã thanh toán đủ số tiền 360 tỷ đồng.
Giá bán cổ phần như trên đã gây thất thoát cho Công ty Sadeco hơn 940 tỷ đồng. Trong đó, UBND TP HCM thiệt hại 413 tỷ (tỷ lệ vốn góp 44%), thiệt hại cho Thành ủy là 157 tỷ (16,7% vốn).
Cơ quan điều tra căn cứ Điều 149 Luật doanh nghiệp cho rằng, ông Phạm Nhật Vinh và Nguyễn Hữu Thành (đại diện Công ty Nguyễn Kim, thành viên HĐQT Sadeco) đã tán thành thông qua nghị quyết thì phải liên đới chịu trách nhiệm và phải đền bù thiệt hại.
Ngày 11/12/2020, ông Vinh bị khởi tố về tội Vi phạm quy định về quản lý, sử dụng tài sản Nhà nước gây thất thoát, lãng phí với vai trò đồng phạm của Tất Thành Cang, Tề Trí Dũng… Tuy nhiên, bị can đã xuất cảnh đi nước ngoài.
Ngày 31/12/2020, Công an TP HCM đã ra quyết định truy nã toàn quốc đối với Phạm Nhật Vinh, đồng thời đề nghị Cục Đối ngoại – Bộ Công an thực hiện các thủ tục truy nã quốc tế.
Hiện, hành vi sai phạm của ông Vinh đã được tách riêng, khi nào bắt được sẽ xử lý sau.
Camera có dây xuất hiện trước camera không dây nhưng chưa chắc đã lạc hậu hơn trên phương diện đảm bảo an ninh.
Trước hết, cần phân biệt ba loại camera an ninh: loại có dây (kết nối với nguồn điện và Internet bằng dây), loại không dây (kết nối với nguồn điện bằng dây, kết nối mạng bằng Wifi), và camera không dây chạy pin (nối mạng bằng Wifi, nguồn điện lấy từ pin).
Hệ thống camera an ninh có dây bao gồm đầu ghi video ra định dạng số cùng nhiều camera (thường từ bốn tới 16). Loại này sẽ ghi hình ra ổ lưu trữ và có thể được nối mạng Internet để chủ nhân theo dõi từ xa. Các camera trong cùng mạng lưới không cần cắm vào ổ điện riêng rẽ vì chúng lấy điện từ nguồn trung tâm.
Camera có dây cần được nối với nguồn điện và mạng internet bằng dây. Ảnh: iStock.
Hệ thống camera không dây (hay còn gọi là camera wifi) truyền tải video qua mạng wifi nhưng vẫn được nối với nguồn điện bằng dây. Hệ thống camera không dây thường sẽ lưu trữ video vào máy chủ ảo trên mạng nên chủ nhân có thể tiếp cận từ bất cứ đâu, nhưng vẫn có loại lưu video vào bộ nhớ của từng camera.
Một số hệ thống camera không dây lấy điện từ pin và hoàn toàn không sử dụng dây. Loại này sẽ được sạc bằng dây cáp USB hoặc dùng pin có thể tháo rời để sạc.
Mỗi loại camera đều có ưu, nhược điểm riêng. Ưu điểm lớn nhất của camera có dây là độ tin cậy. Cả hệ thống vẫn sẽ ghi hình dù không có kết nối Internet nên chủ nhân sẽ không phải lo tín hiệu wifi kém hoặc pin yếu.
Hệ thống camera có dây sẽ bảo mật hơn vì ít khả năng bị hack hoặc chặn. Tuy nhiên, loại camera này thường mất thời gian lắp đặt hơn.
Ngược lại, ưu điểm của hệ thống camera không dây là sự linh hoạt. Chủ nhân có thể đặt máy quay ở bất cứ đâu trong tầm tín hiệu wifi và ổ điện (với loại không có pin), đồng thời không cần khoan đục tường. Việc lắp thêm camera cũng không cần tốn nhiều công sức vì chủ nhân chỉ cần cắm điện và nối mạng wifi.
Vì hầu hết camera không dây lưu trữ dữ liệu trên máy chủ ảo, bạn có thể lưu trữ video trong thời gian lâu hơn so với hệ thống có dây (thường là 15 ngày). Một số dịch vụ máy chủ ảo cho phép lưu trữ dữ liệu tới 60 ngày, đổi lại bạn cần trả phí.
Ngoài ra, các ứng dụng và phần mềm đi kèm camera không dây thường thân thiện hơn với người dùng và có thể được điều khiển bằng trợ lý ảo như Google Assistant hoặc Alexa.
Để xác định chọn hệ thống camera nào, bạn cần cân nhắc một số tiêu chí. Ví dụ, hệ thống camera có dây sẽ thích hợp với người sở hữu nhà và xác định ở lâu dài, không ngại khoan đục tường, quan tâm độ tin cậy của hệ thống, và sẵn sàng đầu tư khoản tiền tương đối.
Ngược lại, hệ thống camera không dây phù hợp với người đi thuê nhà và thường di chuyển, không muốn bỏ nhiều tiền một lúc, không thích lắp đặt phức tạp hoặc không được phép phá tường.
Người dân chuyển đổi từ chứng minh nhân dân sang thẻ căn cước gắn chip hoặc làm thẻ mới được giảm 50% lệ phí.
Theo Thông tư mới của Bộ Tài chính, từ nay đến hết tháng 6/2021, khi người dân chuyển từ chứng minh nhân dân (CMND) 9 số hoặc 12 số sang thẻ căn cước công dân thì mức lệ phí giảm từ 30.000 đồng mỗi thẻ xuống còn 15.000 đồng.
Mức giảm từ 50.000 đồng xuống 25.000 đồng mỗi căn cước áp dụng với trường hợp người dân bị hư hỏng thẻ không dùng được; thay đổi thông tin về họ, chữ đệm, tên, đặc điểm nhận dạng; xác định lại giới tính, quê quán; sai sót thông tin trên thẻ; hoặc khi yêu cầu đổi thẻ.
Trường hợp cấp lại căn cước công dân khi bị mất, được giảm từ 70.000 đồng xuống 35.000 đồng.
Công an Hà Nội thu thập dữ liệu để làm căn cước công dân gắn chip, ngày 31/12/2020. Ảnh: Bá Đô
Theo Luật Căn cước công dân 2014, người từ đủ 14 tuổi được cấp thẻ căn cước công dân và phải được đổi khi đủ 25, 40 tuổi và 60 tuổi. Dự kiến với loại thẻ mới gắn chip, đến tháng 7/2021, Bộ Công an sẽ cấp cho 50 triệu công dân.
Thẻ căn cước mới dự kiến có 20 trường thông tin do ngành công an quản lý (họ tên, năm sinh, quê quán…), ngoài ra sẽ tích hợp dữ liệu của ngành thuế, hải quan, bảo hiểm, bằng lái… Mẫu thẻ được kỳ vọng đáp ứng yêu cầu cải cách hành chính, phát triển Chính phủ điện tử, giúp người dân trong tương lai đi làm thủ tục bớt phải mang cùng lúc nhiều giấy tờ.
Từ 31/12/2020, Công an Hà Nội đã bắt đầu thu nhận thông tin để cấp căn cước gắn chip cho người dân.
WebRTC là gì? Cách viết ứng dụng gọi video bằng WebRTC và Firebase
WebRTC là gì?
WebRTC là các API viết bằng javascript giúp giao tiếp theo thời gian thực mà không cần cài plugin hay phần mềm hỗ trợ. WebRTC có khả năng hỗ trợ trình duyệt giao tiếp thời gian thực thông qua Video Call, Voice Call hay transfer data P2P(peer-to-peer), không cần đến plugin, phần mềm khác. Vậy ý nghĩa viết tắt của chữ WebRTC là gì?
WebRTC là tập hợp các API và được viết bằng javascript
WebRTC là viết tắt của cụm từ Web Real-Time Communication rất được các lập trình viên ưa chuộng. WebRTC cho phép các trình duyệt giao tiếp với nhau theo thời gian thực .Ví dụ như: gọi điện, video, chơi game,… Ngoài ra, WebRTC là một sản phẩm của World Wide Web Consortium (W3C).
Lịch sử của WebRTC
Là dự án mã nguồn mở miễn phí của Google
WebRTC đã được hình thành ý tưởng từ những năm 2009 bởi nhóm kỹ sư Google Hangouts. Thay vì sử dụng Flash để truyền video, hình ảnh trên web, họ quyết định tự tạo ra một sản phẩm của riêng mình.
Năm 2010, khi hai công ty On2 và Global IP Solutions(GIPS) chính thức bị Google thâu tóm, công nghệ truyền dữ liệu thời gian thực cũng được lấy làm nền tảng cho WebRTC. Đến tháng 5 năm 2011, dự án nguồn mở hỗ trợ giao tiếp thời gian thực giữa trình duyệt mang tên WebRTC mới chính thức được ra mắt.
Cùng lúc đó, W3C và Hiệp Hội Kỹ Sư Quốc Tế(IETF) cũng phát triển các giao thức kết nối thời gian thực. Vì thế, họ đã quyết định bắt tay để cùng nhau xây dựng sản phẩm này. Tháng 10 năm 2011, phiên bản đầu tiên của WebRTC chính thức ra mắt, đến tháng 11, Chrome 23 ra đời và trở thành trình duyệt đầu tiên tích hợp sẵn WebRTC.
WebRTC dùng để làm gì?
WebRTC được ứng dụng trong nhiều lĩnh vực
Tính năng nổi bật nhất của WebRTC chắc chắn chính là khả năng truyền tải video, âm thanh, gửi dữ liệu theo thời gian thực giữa hai hay nhiều thiết bị mà không qua trung gian, không cần cài thêm plugin.
Trang web Appear.in từng là một trong những trang web sử dụng WebRTC khá nổi tiếng. Trang này cung cấp dịch vụ tạo phòng chat video nhanh chóng mà không cần cài đặt thêm bất kì plugin nào, không cần đăng nhập tài khoản.
Không chỉ các ứng dụng mà WebRTC còn được sử dụng cho việc tạo ra các tựa game trên trình duyệt. Người chơi chỉ cần sử dụng trình duyệt có hỗ trợ WebRTC để chơi, không cần cài đặt rườm rà.
Lợi ích của WebRTC là gì?
WebRTC mang đến nhiều lợi ích cho cả người dùng và lập trình viên
Mã nguồn mở miễn phí: WebRTC là một dự án mã nguồn mở miễn phí. Google cho biết đây là một công cụ truyền thông thời gian thực hoàn toàn miễn phí và có sẵn trên mọi trình duyệt.
Hỗ trợ đa nền tảng: Mặc dù WebRTC vẫn trong giai đoạn phát triển nhưng nó đã hoạt động tốt trên hầu hết mọi trình duyệt của các hệ điều hành bất kì. Cho phép lập trình viên viết các đoạn mã HTML làm việc với máy tính hoặc thiết bị di động.
Bảo mật voice và video: Giao thức SRTP (Secure Real-Time Transport Protocol) được dùng để mã hóa và xác thực dữ liệu media. Chống lại các khả năng bị nghe trộm trong quá trình thực hiện tác vụ video hay voice.
Không cần plugin hay phần mềm hỗ trợ: Yếu tố quan trọng giúp WebRTC được đánh giá rất cao chính là khả năng hoạt động không cần đến plugin bên thứ ba mang đến sự tiện lợi, tối ưu tốc độ, tiết kiệm chi phí,…
Tương đối dễ sử dụng: WebRTC có thể được tích hợp trong các dịch vụ web bằng cách dùng JavaScript APIs, các Framework có sẵn.
Sử dụng bằng thông hiệu quả: Hỗ trợ nhiều kiểu media và các thiết bị đầu cuối khác nhau, WebRTC sử dụng băng thông hiệu quả hơn, hoạt động tốt trong mọi điều kiện đường truyền mạng.
Ưu và nhược điểm của WebRTC là gì?
WebRTC có khá nhiều những ưu điểm. Tuy nhiên nó vẫn tồn tại một số những nhược điểm.
Ưu điểm của WebRTC là gì?
Hỗ trợ đa nền tảng, đa trình duyệt trên các thiết bị
Được viết bằng ngôn ngữ javascript nên dễ dàng tiếp cận và sử dụng.
Hoàn toàn miễn phí.
Có thể hỗ trợ đa nền tảng, đa trình duyệt web trên laptop, PC, các thiết bị di động….
Tính bảo mật cao.
Không cần cài đặt, không cần plugin, phần mềm hỗ trợ.
Dùng được trong nhiều điều kiện đường truyền mạng.
Nhược điểm của WebRTC là gì?
WebRTC chưa hỗ trợ toàn diện tất cả trình duyệt
WebRTC bị cản bởi NAT và tường lửa khi cố gắng thực hiện kết nối P2P.
Không có cơ chế báo hiệu cài sẵn khi WebRTC tạo kết nối P2P giữa các trình duyệt.
WebRTC vẫn chưa chính thức hoàn thiện, một số trình duyệt như IE, Safari chưa thực sự được hỗ trợ tốt nhất.
Các hãng trình duyệt chưa thống nhất được chuẩn video sử dụng cho WebRTC.
Số lượng hàm API WebRTC hỗ trợ cho mỗi trình duyệt là khác nhau, tăng rủi ro phát sinh lỗi khi sử dụng trên các trình duyệt khác nhau.
Các phần chính của WebRTC và chức năng của WebRTC API là gì?
Cung cấp tính năng truyền dữ liệu thời gian thực
MediaStream
MediaStream là một stream dữ liệu âm thanh và hình ảnh, bằng cách gọi hàm getUserMedia để khởi tạo khi làm việc cục bộ. MediaStream sẽ cho phép truy cập vào stream của một máy tính sau khi một kết nối WebRTC được thiết lập với một máy tính khác.
Một MediaStream sẽ có input và output với input dùng để lấy dữ liệu hình ảnh và âm thanh của local trong khi output dùng để hiển thị các dữ liệu này lên view hoặc được RTCPeerConnection sử dụng.
RTCDataChannel
Đúng với cái tên của mình, RTCDataChannel là một kênh hai chiều chịu trách nhiệm trao đổi dữ liệu thời gian thực. RTCDataChannel sẽ trao đổi các dữ liệu dạng text, chia sẻ tệp P2P và các loại khác mà không chứa các dữ liệu nghe nhìn(âm thanh, hình ảnh). Khả năng trao đổi thông tin nhanh chóng, an toàn, đáng tin khiến RTCDataChannel được khai thác để xây dựng các giải pháp mới và hiệu quả về chi phí.
RTCPeerConnection
Là phần quan trọng giúp kết nối MediaStream và RTCDataChannel trở thành WebRTC. RTCPeerConnection là API giúp kết nối giữa hai trình duyệt, cung cấp các phương thức để kết nối, duy trì kết nối và đóng kết nối khi không còn nhu cầu sử dụng.
Cách viết ứng dụng gọi video bằng WebRTC và Firebase
WebRTC cho phép gọi video không cần plugin
Firebase là một nền tảng để phát triển ứng dụng di động và trang web, bao gồm các API đơn giản và mạnh mẽ mà không cần backend hay server.
WebRTC hỗ trợ đa nền tảng và đa ngôn ngữ vì vậy bạn có thể dùng nó cho trang web có đuôi HTML hoặc PHP đều được.
Hàm được sử dụng để thêm cơ sở dữ liệu vào Firebase
var yourId =Math.floor(Math.random()*1000000000);
Dùng để tạo yourId random (ngẫu nhiên)
var servers ={'iceServers':[{'urls':'stun:stun.services.mozilla.com'},{'urls':'stun:stun.l.google.com:19302'}]};
Khai báo máy chủ sử dụng ở đây là hai máy chủ STUN của Google và Firefox, tùy nhu cầu mà bạn có thể thêm hoặc bớt.
Giao thức STUN
STUN viết tắt của cụm từ Session Traversal Utilities for NAT là một giao thức mạng cho phép các máy khách tìm ra địa chỉ công khai của mình, loại NAT mà chúng đang đứng sau và cổng phía Internet được NAT gắn liền với cổng nội bộ nào đó. Từ đó, thiết lập giao tiếp UDP giữa 2 host mà đều nằm sau NAT router, giao thức STUN được định nghĩa trong RFC 5389.
var pc =newRTCPeerConnection(servers);
Tạo mới một đối tượng PeerConnection
pc.onicecandidate =(event=>event.candidate ? sendMessage(yourId, JSON.stringify({'ice':event.candidate})): console.log('Sent All Ice'));
Chờ các đối tượng Offer, Answer, ICE Candidates được gửi. Sự kiện onaddstream được gọi và đặt friendsVideo.srcObject thành đối tượng MediaStream. Thao tác này sẽ hiển thị video người kia trên máy tính của bạn và ngược lại.
function sendMessage(senderId, data){var msg = database.push({ sender: senderId, message: data });
msg.remove();}
Hàm sendMessage
Hàm sendMessage thêm dữ liệu vào cơ sở dữ liệu Firebase
function showMyFace(){
navigator.mediaDevices.getUserMedia({audio:true, video:true}).then(stream => yourVideo.srcObject = stream).then(stream => pc.addStream(stream));}
Hàm showMyFace
Hàm showMyFace, khi bạn gọi đến getUserMedia, trình duyệt của bạn sẽ yêu cầu quyền truy cập camera. Trả về một đối tượng MediaStream cái mà bạn có thể đặt bằng yourVideo.srcObject. Chức năng đoạn này là hiển thị mặt của bạn trên chính máy tính của bạn. Sau đó, ta cần thêm MediaStream vào PeerConnection. Trên máy tính đối phương thực hiện cuộc gọi cũng thực hiện tương tự.
function showFriendsFace(){
pc.createOffer().then(offer => pc.setLocalDescription(offer)).then(()=> sendMessage(yourId, JSON.stringify({'sdp': pc.localDescription})));}
Tạo đối tượng Offer
Tạo đối tượng Offer bằng cách gọi hàm pc.createOffer(). Đặt local description cho offer này bằng cách gọi pc.setLocalDescription(offer). Cuối cùng gửi đối tượng Offer cho đối phương bằng cách gọi sendMessage.
Hàm readMessage cho phép đối phương đọc tin nhắn, với tin nhắn dạng offer thì khi bạn gửi cho bạn bè một Offer bạn đã tạo, đối phương sẽ thiết lập mô tả từ xa (remote description) của họ cho đối tượng Offer mà bạn đã gửi cho họ bằng cách gọi:
Người nhận sẽ tạo một đối tượng Answer bằng cách gọi hàm pc.createAnswer(). Kết quả trả về một đối tượng Answer mà bạn sẽ thiết lập ở mô tả local. Người nhận làm được điều này bằng cách gọi đến pc.setLocalDescription(answer). Sau đó, người nhận lấy đối tượng Answer và gửi nó cho bạn bằng cách gọi sendMessage.
Code web hoàn chỉnh sẽ có dạng như sau
<html><head><scriptsrc="https://www.gstatic.com/firebasejs/5.0.4/firebase.js"></script><linkhref="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css"rel="stylesheet"><styletype="text/css">
video {
background-color:#ddd;
border-radius:7px;
margin:10px0px0px10px;
width:320px;
height:240px;}
button {
margin:5px0px0px10px!important;
width:654px;}</style></head><bodyonload="showMyFace()"><videoid="yourVideo"autoplaymuted></video><videoid="friendsVideo"autoplay></video><br/><buttononclick="showFriendsFace()"type="button"class="btn btn-primary btn-lg"><spanclass="glyphicon glyphicon-facetime-video"aria-hidden="true"></span> Call</button><scripttype="text/javascript">
var config = {
apiKey: " <API_KEY>",
authDomain: " <PROJECT_ID>.firebaseapp.com",
databaseURL: " https://<DATABASE_NAME>.firebaseio.com",
projectId: " <PROJECT_ID>",
storageBucket: " <BUCKET>.appspot.com",
messagingSenderId: " <SENDER_ID>"
};
firebase.initializeApp(config);
var database = firebase.database().ref();
var yourVideo = document.getElementById("yourVideo");
var friendsVideo = document.getElementById("friendsVideo");
var yourId = Math.floor(Math.random()*1000000000);
var servers = {'iceServers': [{'urls': 'stun:stun.services.mozilla.com'}, {'urls': 'stun:stun.l.google.com:19302'}, {'urls': 'turn:numb.viagenie.ca','credential': 'webrtc','username': 'websitebeaver@mail.com'}]};
var pc = new RTCPeerConnection(servers);
pc.onicecandidate = (event => event.candidate?sendMessage(yourId, JSON.stringify({'ice': event.candidate})):console.log("Sent All Ice") );
pc.onaddstream = (event => friendsVideo.srcObject = event.stream);
function sendMessage(senderId, data) {
var msg = database.push({ sender: senderId, message: data });
msg.remove();
}
function readMessage(data) {
var msg = JSON.parse(data.val().message);
var sender = data.val().sender;
if (sender != yourId) {
if (msg.ice != undefined)
{
pc.addIceCandidate(new RTCIceCandidate(msg.ice));
}
else if (msg.sdp.type == "offer")
{
var r = confirm("Answer call?");
if (r == true) {
pc.setRemoteDescription(new RTCSessionDescription(msg.sdp))
.then(() => pc.createAnswer())
.then(answer => pc.setLocalDescription(answer))
.then(() => sendMessage(yourId, JSON.stringify({'sdp': pc.localDescription})));
} else {
alert("Rejected the call");
}
}
else if (msg.sdp.type == "answer")
{
pc.setRemoteDescription(new RTCSessionDescription(msg.sdp));
}
}
};
database.on('child_added', readMessage);
function showMyFace() {
navigator.mediaDevices.getUserMedia({audio:true, video:true})
.then(stream => yourVideo.srcObject = stream)
.then(stream => pc.addStream(stream));
}
function showFriendsFace() {
pc.createOffer()
.then(offer => pc.setLocalDescription(offer) )
.then(() => sendMessage(yourId, JSON.stringify({'sdp': pc.localDescription})) );
}
/script>
</body></html>
Ứng dụng hoàn chỉnh sẽ cho phép 2 máy tính truy cập vào cùng đường dẫn và gọi video cho nhau.
Tổng kết
Như vậy, chỉ với chưa đầy 100 dòng code và chỉ bao gồm HTML, CSS và Javascript là bạn đã tạo ra một ứng dụng gọi điện trực tuyến thời gian thực trên hosting web. Người sử dụng không cần đến bấy kì plugin hay phần mềm hỗ trợ nào.
Trong thực tế, WebRTC sẽ mang lại rất nhiều ưu điểm so với các phương pháp truyền thống. Giảm số dòng code, độ phức tạp cho các lập trình viên khi phải lập trình các ứng dụng cao cấp, tiết kiệm rất nhiều chi phí, sử dụng băng thông hiệu quả,… Hy vọng rằng bài viết đã tổng hợp được những thông tin hữu ích cho bạn đọc..
Smoke Testing là 1 quá trình để kiểm tra liệu build đã triển khai ổn định hay không? Để xác nhận liệu QA team có thể tiếp tục với further testing hay không? Các Smoke Testing là 1 thiết lập các bài test tối thiểu chạy trên mỗi bản build.
Smoke Testing là quá trình mà phần mềm build đã được triển khai tới môi trường QA và đã được kiểm tra độ ổn định của ứng dụng. Nó cũng được gọi là “Build verification testing”.
Nói 1 cách đơn giản, chúng ta đang xác minh liệu các tính năng quan trọng có đang hoạt động chứ không có danh mục nào trong build mà đang được test.
Nó là 1 bài test hồi quy nhỏ và nhanh của các chức năng chính. Nó là 1 bài test đơn giản cho thấy sản phẩm đã sẵn sàng cho việc test chưa. Điều này giúp xác định xem build có thiếu sót gì không để làm các further testing tránh lãng phí thời gian và tài nguyên.
Môi trường staging (stage) là một bản sao gần chính xác của môi trường sản xuất để kiểm thử phần mềm. Môi trường staging được tạo ra để kiểm tra code, các bản build và cập nhật, nhằm đảm bảo chất lượng trong môi trường giống như sản xuất trước khi triển khai ứng dụng.
Môi trường staging yêu cầu một bản sao của cùng cấu hình phần cứng, máy chủ, cơ sở dữ liệu và bộ nhớ cache. Mọi thứ trong môi trường staging phải càng giống với bản sao trong môi trường sản xuất càng tốt, để đảm bảo phần mềm hoạt động chính xác.
Deverlopment => Test => Staging => Production
Các bước để triển khai phần mềm bao gồm phát triển, tích hợp, thử nghiệm và QA (đảm bảo chất lượng), staging (kiểm thử), sản xuất. Việc tìm ra lỗi phần mềm đóng vai trò rất quan trọng đối với hiệu suất. Môi trường staging thử nghiệm ở mức độ gần giống như quy trình sản xuất thực, trong môi trường phi sản xuất và có thể khiến người dùng tự tin hơn nữa về việc sử dụng phần mềm khi sản xuất.