Tag Archives: database

12 yếu tố tạo nên 1 web app xịn xò – Lược dịch và giải thích Twelve-Factor – Phần 3

Như đã giới thiệu ở bài trước, mình sẽ giới thiệu về twlve-factor app. Đây là 12 yếu tố cần thiết để xây dựng 1 ứng dụng “xịn xò”, ổn định, dễ mở rộng, dễ deploy.

Trong bài này, mình sẽ giải thích các yếu tố từ 8 tới 12 nhé:

  • 8. Concurrency: Một app nên được chia tách thành nhiều process nhỏ để tăng concurrency
  • 9. Disposability: Process của web app nên sống nhanh, chết nhẹ nhàng, để có thể dễ dàng chạy/kill process nhanh chóng
  • 10. Dev/prod parity: Các môi trường dev/staging/production nên giống nhau hết sức có thể
  • 11. Logs: Logs nên được viết ra dạng stream ở stdout
  • 12. Admin Processes: Một số task dạng admin (tạo database, fix dữ liệu) nên được chạy trong cùng môi trường với app đang chạy

 

Đây là phần 3 trong series 3 phần về Twelve-Factor App:

  1. Lược dịch và giải thích Twelve-Factor. Giải thích Codebase và Dependencies
  2. Giải thích Config, Backing Service, Build -> Release -> Run, Processes, Port Binding
  3. Giải thích Concurrency, Disposability, Dev/Prod Parity, Logs, Admin Processes

Continue reading 12 yếu tố tạo nên 1 web app xịn xò – Lược dịch và giải thích Twelve-Factor – Phần 3

Sập Server có phải muôn đời – Phần 3: Phương pháp phòng chống – ngủ ngon không lo server sập

Đây là phần 3 trong series 3 phần “Sập Server có phải muôn đời”.

  1. Làm gì khi hệ thống sập bất ngờ – Xách quần lên công ty
  2. Viết post-mortem sau khi xử lý sự cố – Đừng chỉ trích hay đổ lỗi
  3. Những phương pháp phòng chống/monitoring – Giúp anh em ngủ ngon không lo server sập

 

Ở 2 phần trước, mình đã chia sẻ về những việc cần làm khi hệ thống sập bất ngờ, nên viết post motern như thế nào để tránh gặp phải những sai lầm tương tự.

Tuy vậy, như các cụ đã nói “phòng bệnh hơn chữa bệnh”, phòng chống hệ thống sập thì tốt hơn là chờ hệ thống tèo rồi mới sửa chứ nhỉ. Do vậy, ở kì này, mình sẽ chia sẻ những kinh nghiệm phòng chống nhé.

Continue reading Sập Server có phải muôn đời – Phần 3: Phương pháp phòng chống – ngủ ngon không lo server sập

Mình và Codeaholicguy đã làm Bot Con Chim theo phong cách startup như thế nào!

Có thể bạn chưa biết, mình và Codeaholicguy có code chung 1 con bot Facebook tên The Codergang Vietnam Bot (bot.codergangvn.com), chuyên gửi bài viết hay về IT cho các bạn đọc.

Tụi mình làm con bot này cũng lâu rồi, đến nay cũng đã được hơn 7000 bạn đọc đăng kí.

Hệ thống này gồm 2 phần:

  1. Con Bot: chuyên gửi bài viết hay cho bạn đọc qua Messenger, cho mọi người đăng kí
  2. Con Chimp: Hệ thống quản lý user, bài viết và analytic đằng sau.
  3. Toàn bộ hệ thống bao gồm Con Bot + Con Chimp = Bót Con Chim.

Trong bài này, tụi mình sẽ chia sẻ qui trình tụi mình làm ra con bot này nhé! Chúng khá là vui thú vị, biết đâu các bạn có thể học và áp dụng được vài thứ hay ho vào sản phẩm của mình đấy!

Continue reading Mình và Codeaholicguy đã làm Bot Con Chim theo phong cách startup như thế nào!

Thiên Địa Hội truyền kì – Chuyện về tầm quan trọng của Index trong Database (Phần 1)

Lâu rồi, Code Dạo không biên bài phong cách kiếm hiệp, sợ anh em đồng đạo quên rằng ngoài chém gió kĩ thuật, Code Dạo còn có khả năng mượn chuyện kiếm hiệp để nói chuyện lập trình.

Kì này, Code Dạo tái xuất giang hồ, kể anh em nghe đôi câu chuyện vui về optimization, database và index nhé.

Truyện chỉ có tính chất hư cấu, anh em đồng đạo đọc xong đừng vội cho là thật. Thiện tai, thiện tai!

Continue reading Thiên Địa Hội truyền kì – Chuyện về tầm quan trọng của Index trong Database (Phần 1)

Cùng học Cờ Lao – Azure Phần 5.2: Tạo và kết nối SQL Database trên Cloud trong 10 phút

Ở kì trước, mình đã giới thiệu với các bạn về Azure SQL Database, những điểm hay ho đặc sắc của nó rồi.

Ở kì này, tụi mình sẽ bắt tay vào tạo database luôn. Các bạn sẽ có ngay database để dùng cho đồ án, bài tập nhóm v…v mà ko cần phải cài đặt 2, 3 tiếng vất vả như xưa nữa!

  • Phần 1: Tìm hiểu về Azure DatabaseElastic Pool
  • Phần 2: Tạo database mới và kết nối tới Database trong 5 phút

Continue reading Cùng học Cờ Lao – Azure Phần 5.2: Tạo và kết nối SQL Database trên Cloud trong 10 phút

Cùng học Cờ Lao – Azure Phần 5.1: Sự bá đạo của Azure SQL Database?

Ở kì trước, mình đã chỉ các bạn cách deploy một ứng dụng đơn giản trong 5 phút lên Azure rồi.

Tuy nhiên, ứng dụng nào thì cũng cần Database. Không có Database thì lấy đâu ra chỗ lưu trữ dữ liệu, truy cập và tính toán dữ liệu!

Dĩ nhiên, Azure cũng cung cấp dịch vụ Database “trên mây” luôn. Bài viết này cũng sẽ gồm 2 phần:

  • Phần 1: Tìm hiểu về Azure DatabaseElastic Pool
  • Phần 2: Tạo database mới và kết nối tới Database trong 5 phút

Continue reading Cùng học Cờ Lao – Azure Phần 5.1: Sự bá đạo của Azure SQL Database?

Cùng học Cờ Lao – Azure Phần 4.2: Deploy ứng dụng lên Azure App Service trong 5 phút

Ở phần trước, chúng ta đã tìm hiểu về Azure App Service và những thứ linh tinh liên quan đến nó rồi.

Không để bà con phải chờ lâu nữa, trong kì này chúng ta cùng deploy ngay và luôn nha. Đảm bảo sau 5 phút, các bạn sẽ có 1 trang web của riêng mình chạy trên Azure luôn.

Continue reading Cùng học Cờ Lao – Azure Phần 4.2: Deploy ứng dụng lên Azure App Service trong 5 phút

Thực hư chuyện Facebook lưu mật khẩu dưới dạng text, để lộ mật khẩu trăm triệu người dùng?

Cách đây vài hôm, giang hồ rộ lên vụ Facebook lưu trữ mật khẩu người dùng dưới dạng plain text, nhân viên cũng có thể đọc được.

Vốn tò mò, mình tự hỏi: Tại sao một công ty lớn như Facebook lại có thể phạm phải một lỗi sơ đẳng như vậy được? Tìm hiểu sâu hơn, mình lại tìm hiểu thêm được 2 điều khá hay:

  • Cách Facebook bảo vệ mật khẩu của người dùng
  • Một lỗi bảo mật nghiêm trọng về mật khẩu, mà cả Facebook lẫn Twitter từng mắc phải

Tò mò chưa nào, các bạn đọc bài viết sẽ biết nhé!

Continue reading Thực hư chuyện Facebook lưu mật khẩu dưới dạng text, để lộ mật khẩu trăm triệu người dùng?

Những môn học nào thật sự quan trọng trong ngành lập trình?

Bây giờ đã là đầu tháng 11, thời điểm các em sinh viên bắt đầu nhập học, tìm hiểu về lập trình.

Vì thế, gần đây mình nhận được nhiều câu hỏi về việc nên tập trung học những môn nào, những môn nào là quan trọng, sẽ được sử dụng nhiều trong công việc.

Do vậy, mình viết bài này để chia sẻ về các môn học quan trọng trong ngành này, cho các bạn sinh viên từ năm nhất đến năm cuối biết để mà chuẩn bị nhé!

Continue reading Những môn học nào thật sự quan trọng trong ngành lập trình?

[Tâm sự] Những sai lầm và thất bại mà mình từng nếm trải trong 5 năm làm việc – Phần 2

Series gồm 3 phần:

 

Ở phần trước, mình đã kể về những lỗi lầm mình phạm phải khi còn là junior developer ở FPT Software và Aswig Solution.

Trong phần này, mình sẽ kể chuyện về thất bại và sai lầm của mình thời mới đi du học, đi làm bên UK, qua Trung Quốc và đi xin việc nhé!

Continue reading [Tâm sự] Những sai lầm và thất bại mà mình từng nếm trải trong 5 năm làm việc – Phần 2