THẢO LUẬN

thg 4 15, 10:04 SA

VdoCipher is also a great live streaming platform, especially for course creators, event organisers and broadcasters. Thank me later 😉

0

@anhnv99 vì angular họ config webpack khá nhiều, nên nếu ko dùng custom-webpack thì bạn tự viết 1 cái như vậy cũng được, nhưng mình thấy như vậy ko cần thiết, kiểu "reinvent the wheel", dùng sẵn cho tiện b ạ

Về cơ bản chỉ là extend cái cấu hình webpack của Angular để thêm ModuleFederation vào thôi.

thay vì custom-webpack thì bạn cũng có thể dùng angular-architects họ cho mình cấu hình vào sâu hơn nữa

0

@maitrungduc1410 thực tế nếu bỏ "custom-webpack" thì việc triển khai liệu có phức tạp hơn nhiều không bạn nhỉ?

0

Cảm ơn chuỗi bài viết của anh ạ. Em đang có thắc mắc mong anh giải đáp giúp. Tại sao mình cần lưu lại refreshToken vào db để so sánh vậy ạ? Ý em là chẳng phải nó cũng là một JWT, chi bằng cứ để client lưu, khi client fetch /refresh. Chúng ta chỉ cần verify jwt đó là được. Em có đang hiểu sai chỗ nào ko ạ? Thank a!

+1

Quarkus thật sự là supersonic subatomic của java với thời gian build java package nhanh. Tuy nhiên có vài điểm cần chú ý: +Maturity and Ecosystem: Hệ sinh thái Quarkus ít hơn nhiều so với spring, nên sẽ không có nhiều và bị hạn chế documentations, third-party integrations, ... +Limited Tooling: Các tool hiện giờ phần lớn sẽ support cho spring-based applications. Các IDE plugins, other utitlities sẽ bị limit .

0

@Gideon tránh mấy branch dùng chung ra như main, stag hoặc dev còn mấy branch cá nhân hoặc temporary branch thì cần méo gì quy tắc cho mệt bác ơi. Nhưng mà vẫn 1 like vì kiến thức mới (hoặc kiến thức ít khi đụng đến? 😄). Về lịch sử commit thì có thể thay đổi được qua rebase hoặc reset mà.

0
Avatar
đã bình luận cho bài viết
thg 4 13, 8:55 CH

Cáu thật, vào tìm xem cách khai báo hằng làm sao đọc đã đời lại không có, đó giờ toàn xem chùa, giờ lại phải reg cả account chỉ để phàn nàn

0

Vấn đề này bạn có thể tổng quát hóa hơn, có thể là "Cách truyền params mà không làm mất reference" chả hạn. Bên Vue thì bày ra cái toRef và React thì có useState, Angular thì mình hay dùng BehaviorSubject (rxjs) hoặc vanilla JS thì dùng Object.assign để cho dev có thể truyền và cập nhật các param mà không làm mất reference của chúng. Từ cái đó suy ra thêm các lưu ý khi cập nhật state sao cho vừa tránh mất reference vừa có thể trigger các hook của state nữa =))

0

@Koruvika trời

e FROM 2 lần thì chỉ cái FROM cuối cùng nó mới là môi trường lúc chạy thôi, tức là lúc deploy lên thì chỉ có mỗi môi trường python mà môi trường mysql ko có e nhé.

E lên GCP tạo 1 cái VM (Compute Engine) xong cài docker vào r chạy nhé

0

Hi vọng bạn sớm phản hồi, mình có tìm hiểu theo bài của bạn nhưng khác là mình dùng TyoeORm DB.Cho mình hỏi thêm chút là nếu dùng typeOrm thì cần sửa lại như thế nào. @Injectable() export class UsersRepository extends BaseRepositoryAbstract<User> implements UserRepositoryInterface { constructor( @InjectModel(User.name) private readonly users_repository: Model<User>, ) { super(users_repository); } },mÌNH ĐANG ĐỌC HIỂU LÀ cần sửa ở đây nhưng chưa biết sửa thế nào.

0
thg 4 13, 8:49 SA

dockerfile của em như này @maitrungduc1410

FROM mysql:8.0 AS builder

WORKDIR /app

ENV MYSQL_ROOT_PASSWORD=pass
ENV MYSQL_DATABASE=db

COPY init_db.sql /docker-entrypoint-initdb.d/

EXPOSE 3306

CMD ["mysqld"]

FROM python:3.8 AS production

COPY --from=builder /var/lib/mysql /var/lib/mysql

WORKDIR /app

COPY requirements.txt ./

RUN pip install -r requirements.txt

COPY . .

EXPOSE 8501

ENTRYPOINT ["python", "app.py"]
0
thg 4 13, 8:48 SA

useful

0
thg 4 13, 8:45 SA

@maitrungduc1410 hiện tại thì em cũng chưa biết cách để đẩy lên CGP.

Google cloud hình như không hỗ trợ docker compose, mỗi service nó chỉ chạy dựa trên một docker image. Em đang muốn chỉ chạy 1 service của Google cloud thôi nên đang tìm hiểu cách để đưa mysql + python vào chung 1 dockerfile (multi - stage build) nhưng gặp lỗi không connect được database: DatabaseError: 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (99)

0
thg 4 13, 8:00 SA

Thì lúc đó key = undefined chứ nhỉ

0
thg 4 13, 6:54 SA

Cảm ơn

0

--- Ý kiến cá nhân ----

1/ encoding và decoding:

  • Mục đích của các loại mã như url coding, base64,... ko phải để TIẾT KIỆM đường truyền. Url coding để truyền các ký tự không gặp vấn đề (trouble) khi thông dịch (interpret) các tham số tại phía nhận. Nếu ko có url coding, có thể phát sinh vấn đề như tham số bị ngắt bởi space character, bị thoát bởi các ký tự đặc biệt (escape characters) .. Việc tiết kiệm đường truyền là nhiệm vụ của 1 loại mã khác: mã nguồn - source coding

2/ Cryptography

Thực tế thì mã hóa công khai ít khi được sử dụng để mã hóa dữ liệu đường truyền vì 1 lý do tốc độ mã và giải mã chậm hơn mã hóa đối xứng rất nhiều (bài viết gọi nó là mã hóa thông thường - có vẻ không được offical cho lắm). Do vậy mã công khai chủ yếu được dùng cho các quá trình trao đổi khóa hay tạo chữ ký số (tránh bị giải mạo hay thay đổi nội dung bản tin). Điều này thể hiện rõ tại các chứng thư (certificate) trong ssl hay tls. Để truyền dữ liệu lớn qua các phương thức như web, mã đối xứng sẽ được dùng nhiều hơn với khóa được tạo ra và trao đổi giữa 2 bên tại thời điểm bắt tay gọi là khóa phiên. Đối với các đường truyền không đòi hỏi dung lượng lớn, như qua ssh, khóa công khai có thể được được dùng với private key được lưu trữ dưới dạng local file và thiết lập câc quyền đặc biệt cho file đó.

Nhắc đến mã đối xứng mà bác bỏ qua AES, nhắc đến hash mà bác bỏ qua SHA thì quả là hơi sót. Cảm ơn bác chủ thớt đã chia sẻ!

0
Avatar
đã bình luận cho bài viết
thg 4 12, 3:06 CH

Ko có level 6 à b

0

"người dùng" sử dụng là sao hả e?

e đưa lên GCP hay AWS là e đưa ntn?

0
thg 4 12, 11:04 SA

Hi anh, với việc đưa database như mysql vào trong docker, nếu ta đã deploy image docker đó lên các nền tảng như google cloud hoặc aws thì làm thế nào để lấy được dữ liệu mysql đã được thay đổi (trong lúc người dùng sử dụng) ạ?

0
thg 4 12, 10:38 SA

Anh ơi, em có 1 thắc mắc là tại prepare phase nếu có nhiều request đồng thời thì chắc hẳn phải có locking ở đoạn đó phải không ạ?

Ví dụ: Product A chỉ còn 100 sản phẩm.

Prepare phase:

1/ User A gọi qua Production Service để check đủ số lượng không?

2/ Gọi qua Payment Service để thanh toán.

Commit phase:

...

Em thấy tại ngay bước prepare có thể xảy ra nhiều request đồng thời để prepare mua cùng Product A ạ.

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí