• 19 Nov 2020

    Sử dụng ansible để thiết lập và triển khai nodejs app tới docker containners

    Hôm nay, Hà Nội về đông lạnh quá ! Sáng đến công ty lúc 7h30, hành ông anh đôi trận PES, ăn sáng, rùi lóc cóc bật slack xem có task mới nào không ? Á đù “Hiện tại khách hàng chưa có task mới nhé, nên có thể làm việc khác”, ông PM nhắn tin. Ngồi không vừa buồn ngủ vừa lạnh, check telegram thì không gì mới, nghĩ đến cái blog “màng nhện giăng tơ…”, thui đành ngồi chia sẻ đôi chút cho anh em về ansible đêm qua nằm mơ học được.

  • 08 Mar 2019

    Cấu hình và chuyển đổi kết nối giữa nhiều cơ sở dữ liệu trong Rails

    Trong thời kỳ các dịch vụ cloud phát triển mạnh mẽ, việc xây dựng cơ sở dữ liệu cho phép chia sẽ dữ liệu giữa nhiều ứng dụng khác nhau không có gì mới. Ví dụ như ứng dụng quản lý dân cư, quản lý trường học, bệnh viện,.. trong khu chung cư dùng chung database chứa users, người dùng trong users điều có thể đăng nhập, truy cập vào các ứng dụng trên.

  • 25 Feb 2019

    Hard Link và Symbolic Link trong Linux

    Hẳn hai khái niệm hard link, symbolic link(soft link) gây không ít khó khăn, nhiêu khê cho những người mới tìm hiểu về linux, và với những cả những lão làng bẵng đi một thời gian đọc lại vẫn loạn cả lên. Chúng ta hãy cùng làm rõ 2 khái niệm trên, so sánh ưu nhược điểm của 2 loại này.

  • 23 Feb 2019

    Một số tính năng mới đáng chú ý trong Ruby 2.6.0

    Vào ngày 25/12/2018, phiên bản ruby 2.6.0 chính thức được phát hành, kèm theo đó là những tính năng mới được bổ sung và cải tiền về hiệu suất. Một trình biên dịch mới JIT(Just-In-Time) được ra đời, một module mới RubyVM::AbstractSyntaxTree được đưa vào, hiệu suất được cải thiện 1.7 lần so với Ruby 2.5. Chúng ta hãy cùng điểm qua một số tính năng mới đáng chú ý ở phiên bản Ruby 2.6.0

  • 16 Feb 2019

    Sử dụng Docker Compose để thiết lập và chạy ứng dụng Rails

    Phận làm dev như phận culi, chỉ đâu đánh đấy, nay code dự án này mai lại chuyển dự án khác, code đồng thời 1 lúc dăm ba dự án là chuyện xưa nay không hiếm gặp. Dự án thì khách hàng yêu cầu cái gì cũng phải mới nhất ruby-2.6.1, rails-6.0.0, mysql-8.0, dự án khác thì đã phát triển từ thời napoleon ruby-2.0.0, rails-4.0.0, mysql-5.5. Các dự án có môi trường dev muôn hình muôn vẻ mà công ty chỉ cấp cho một cái máy để dev cả nhiệm kỳ. Trời sinh trouble ắt sinh docker !!!

  • 01 Feb 2019

    Tổng hợp một số câu hỏi về Ruby và Rails [P2]

    11. Lệnh rollback một file migration trong rails ?
    • rake db:migrate:redo
    • rake db:migrate:down
    • rake db:rollback
    • rake db:migrate:reset
  • 28 Jan 2019

    Tổng hợp một số câu hỏi về Ruby và Rails [P1]

    1. Có mấy loại biến khác nhau trong Ruby ?
    • 4 (Local Variables, Global Variables, Instance Variables, Class Variables)
    • 5
    • 6
    • 7
  • 10 Nov 2018

    Joins, preload, includes và eager_load trong Rails

    N+1 Query là gì ?

    Đa phần các ứng dụng trong ngôn ngữ lập trình web nói chung và trong Rails nói riêng đều sử dụng ORM để ánh xạ các record dữ liệu trong quan hệ quản trị cơ sở dữ liệu sang kiểu đối tượng mà mã nguồn định nghĩa trong các Class. Việc này giúp truy xuất dữ liệu đơn giản hơn, nhưng cũng mang đến những “cạm bẫy” khi code chưa khéo và N+1 Query là một phần trong số đó.

  • 07 Nov 2018

    Pessimistic Locking trong Rails

    Trước khi đến với Pessimistic Locking, hãy cùng nhìn lại database lockingoptimistic locking được đề cập ở bài viết lần trước.

    Pessimistic Locking ?

    Khác với optimistic locking là kiểm tra lock_version khi cập nhật dữ liệu, pessimistic locking sẽ khóa record ngay khi người dùng đầu tiên truy cập vào dữ liệu đó, tất cả những người dùng khác sẽ bị loại cho đến khi tiến trình cập nhật của dữ liệu của người dùng lock đầu tiên hoàn thành.

  • 05 Nov 2018

    Optimistic Locking trong Rails

    Database locking ?

    Database locking là một tính năng hữu ích trong cơ sở dữ liệu quan hệ, nhằm ngăn ngừa việc xung đột giữa các hành động thay đổi dữ liệu, đảm bảo tính toàn vẹn dữ liệu giữa thời gian đọc và thời gian sử dụng.

  • Bài cũ hơn