Pointcut: có nhiều cách để xác định joinpoint, những cách như thế được gọi là pointcut.
Advice: là những xử lý phụ được thêm vào xử lý chính, code để thực hiện các xử lý đó được gọi Adivce.
Anhcó thể nói rõ hơn hoặc lấy ví dụ về hai cái này không ? Em thường làm nhưng không thực sự hiểu rõ - nhập nhằng giữa 3 khai niệm này
"Mình đang sợ cài qua docker nó sẽ bị hạn chế về tài nguyên."
-> Đâu, Docker là một công cụ giúp mình tạo ra các môi trường ảo hóa (máy ảo), dùng chung tài nguyên với máy thật mà. Cũng cần phải chú ý tới image size một chút nhé.
"Việc cài service trực tiếp vào system và cài thông qua docker có khác biệt gì không nhỉ."
-> Cài thông qua Docker giống như bạn tạo những chiếc hộp, khi nào cần dùng đến hộp vào thì gọi hộp đó, không muốn dùng nó thì xóa bỏ.
Như vậy, máy chủ sẽ "sạch sẽ", không chứa các file rác ...
Ngoài ra lợi ích của nó cũng còn khá nhiều
=> Về 2 ý này bạn có thể đọc phần 1 để hiểu rõ hơn bản chất của Docker đã nhé !
Máy local của mình cũng là Linux OS, con EC2 của AWS cũng là Linux OS, mình cho chạy như nhau luôn, chỉ khác một vài config ở development và production.
Kiểu 2 thì bắt đầu liên quan tới load balancing, auto scale rồi database master slave ... thì mệt phết.
Có vẻ như còn một số vấn đề như bảo mật, khả năng tương thích ... gì đó mà nhiều ng chưa muốn mạo hiểm apply Docker trên prod.
Mình cũng chưa có điều kiện làm dự án mà prod với docker nên cũng chưa dám chém bừa, cũng đang tìm hiểu thêm bạn ạ.
Cái connect-flash thì đúng là để hỗ trợ mở ra một cái flash mesage ở góc đó. Còn cái express-session để thao tác với session, như lưu lại thông tin phiên đăng nhập của người dùng, hoặc một số thông tin khác...
Trong đây có đoạn code ví dụ về việc lưu page_views vào session bằng package express-session này bạn xem thử xem https://www.tutorialspoint.com/expressjs/expressjs_sessions.htm
Lỗi khá rõ kìa bạn. docker lệnh bạn đang gõ có chữ run khiến docker đang hiểu là bạn đang muốn run một container lên từ image exec và không có tag nên mặt định lấy tag latest cho image exec. Thành ra chả có image nào tên là exec:latest cả
Đơn giản nhất là bạn giữ nguyên tab đang chạy docker-compose up và mở thêm tab để chạy migrate data.
Cho mình hỏi, khi mysql and app container của mình đang chạy, mình muốn chạy lệnh tạo db,
Nhưng khi mình chạy với sudo vẫn bị lỗi denied.
sudo docker run exec -it app rails db:migrate:reset
Unable to find image 'exec:latest' locally
docker: Error response from daemon: pull access denied for exec, repository does not exist or may require 'docker login'.
THẢO LUẬN
Pointcut: có nhiều cách để xác định joinpoint, những cách như thế được gọi là pointcut. Advice: là những xử lý phụ được thêm vào xử lý chính, code để thực hiện các xử lý đó được gọi Adivce.
Anhcó thể nói rõ hơn hoặc lấy ví dụ về hai cái này không ? Em thường làm nhưng không thực sự hiểu rõ - nhập nhằng giữa 3 khai niệm này
"Mình đang sợ cài qua docker nó sẽ bị hạn chế về tài nguyên."
-> Đâu, Docker là một công cụ giúp mình tạo ra các môi trường ảo hóa (máy ảo), dùng chung tài nguyên với máy thật mà. Cũng cần phải chú ý tới image size một chút nhé.
"Việc cài service trực tiếp vào system và cài thông qua docker có khác biệt gì không nhỉ."
-> Cài thông qua Docker giống như bạn tạo những chiếc hộp, khi nào cần dùng đến hộp vào thì gọi hộp đó, không muốn dùng nó thì xóa bỏ. Như vậy, máy chủ sẽ "sạch sẽ", không chứa các file rác ... Ngoài ra lợi ích của nó cũng còn khá nhiều
=> Về 2 ý này bạn có thể đọc phần 1 để hiểu rõ hơn bản chất của Docker đã nhé !
Còn Docker trên prod thì có 2 kiểu: The easiest way to deploy an application is to run it on a single server, similar to how you would run your development environment. If you want to scale up your application, you can run Compose apps on a Swarm cluster.
Kiểu một là chạy single server, dạng basic
Máy local của mình cũng là Linux OS, con EC2 của AWS cũng là Linux OS, mình cho chạy như nhau luôn, chỉ khác một vài config ở development và production.
Kiểu 2 thì bắt đầu liên quan tới load balancing, auto scale rồi database master slave ... thì mệt phết.
Khi đó cần biết tới Kubernetes hoặc Docker swarm
Có vẻ như còn một số vấn đề như bảo mật, khả năng tương thích ... gì đó mà nhiều ng chưa muốn mạo hiểm apply Docker trên prod. Mình cũng chưa có điều kiện làm dự án mà prod với docker nên cũng chưa dám chém bừa, cũng đang tìm hiểu thêm bạn ạ.
Bạn có thể dùng lodash.cloneDeep để copy luôn các method trong object
Đăng ký để upvote cho bác
Bạn thử tham khảo bài viết này xem https://flaviocopes.com/express-forms/ này
Cái
connect-flashthì đúng là để hỗ trợ mở ra một cái flash mesage ở góc đó. Còn cáiexpress-sessionđể thao tác với session, như lưu lại thông tin phiên đăng nhập của người dùng, hoặc một số thông tin khác... Trong đây có đoạn code ví dụ về việc lưupage_viewsvào session bằng package express-session này bạn xem thử xem https://www.tutorialspoint.com/expressjs/expressjs_sessions.htmHay lắm (╯°□°)╯︵ ┻━┻
Gradient Decent => Gradient Descent phải không ấy nhỉ..
Mình có thêm 1 câu hỏi là docker có đc dùng trên môi trường production ko ?
Mình đang nghĩ dùng docker để đồng bộ môi trường của ae trong team với nhau, và chạy trên máy local thì ok,
Còn ví dụ khi deploy lên aws thì không biết trong thực tế có dùng docker tương tự không.
Việc cài service trực tiếp vào system và cài thông qua docker có khác biệt gì không nhỉ.
Mình đang sợ cài qua docker nó sẽ bị hạn chế về tài nguyện.
Cảm ơn bạn nhiều!
Tiếp đi bạn, bài viết dễ hiểu
Cam on tac gia
Bài viết hay lắm bạn, hóng phần tiếp
@thanhnguyen
accessvào trong container thì gõbạn nhé.
@thanhnguyen Anh @xdangminhtruongx đã giải thích rất rõ rồi, bạn cần chạy câu lệnh này nha
Cảm ơn bạn, mình k để ý có gõ thừa thằng run. Thực đang đang muốn access vào mysql container đang chạy thôi
Lỗi khá rõ kìa bạn. docker lệnh bạn đang gõ có chữ
runkhiến docker đang hiểu là bạn đang muốnrunmột container lên từ imageexecvà không có tag nên mặt định lấy tag latest cho imageexec. Thành ra chả có image nào tên làexec:latestcảCảm ơn về bài viết của bạn
Cho mình hỏi, khi mysql and app container của mình đang chạy, mình muốn chạy lệnh tạo db, Nhưng khi mình chạy với sudo vẫn bị lỗi denied.
Unable to find image 'exec:latest' locally docker: Error response from daemon: pull access denied for exec, repository does not exist or may require 'docker login'.
Nhờ các bạn giúp đơ mình ạ !