Cài đặt test trong react sử dụng redux và react-router

Cài đặt test trong react sử dụng redux và react-router

Để cấu hình test cho một app react thông thường sẽ không mấy khó khăn, nhưng để cấu hình cho một app sử dụng các kỹ thuật như redux, react-router đòi hỏi thêm một số cài đặt cần thiết khác.   Giả sử một ứng dụng react sử dụng redux và react-router của bạn có file App.js như sau: // App.js import React, { Component } from 'react'; import { Provider } from 'react-redux'; import { ConnectedRouter } from ...

Dùng laravel với docker-compose

Dùng laravel với docker-compose

Bài này mình xin trình bày không cụ thể về cách sử dụng laravel project với docker dùng docker-compose. 1. Yêu cầu. Bạn phải biết dùng cơ bản về docker, docker-compose. Bạn phải cài đặt docker trên máy trước. Muốn cho một project web PHP như laravel chạy được thì bạn phải có các thứ sau: PHP, hệ cơ sở dữ liệu như mysql, máy chủ web như apache hoặc nginx (bài này dùng nginx), đối với laravel thì phải cần thêm composer(là tool để quản lý các thư viện...

Xác thực kết nối socket trong nodejs

Xác thực kết nối socket trong nodejs

Khi cài đặt socketio trong nodejs, mặc định mọi client có thể kết nối tới socket server đó. Để xác thực và ủy quyền cho những người dùng có quyền sử dụng kết nối, ta cần cấu hình thêm. 1. Phía server Phía server cần xác thực xem socket đang kết nối tới có phải là người dùng được xác thực hay không. Mình sẽ sử dụng JWT để xác thực token gử...

Ví dụ file circleCI 2.0

Ví dụ file circleCI 2.0

1. Trong rails version: 2 jobs: test: docker: - image: circleci/ruby:2.6.0-node environment: BUNDLE_JOBS: 3 BUNDLE_RETRY: 3 BUNDLE_PATH: vendor/bundle RAILS_ENV: test RACK_ENV: test - image: circleci/postgres:9.6-ram environment: POSTGRES_USER: test POSTGRES_DB: test POSTGRES_PASSWORD: "" - image: redis steps: - checkout # Which version of bundler? - run: name: Which bundler? command: bundle -v # Restore bundle cache - restore_cache: keys: - project-v1-{{ checksum "Gemfile.lock" }} ...

Giải thích cách hoạt động của SAML

Giải thích cách hoạt động của SAML

1. SAML là gì? Nếu bạn đã từng nghe OAuth hay OAuth2 thì SAML chính là một chuẩn khác để giải quyết bài toán tương tự với OAuth và OAuth2. Bài toán mà các chuẩn trên giải quyết tên là SSO (Single Sign On).  SSO nảy sinh từ vấn đề khi các nhà cung cấp dịch vụ muốn người dùng có thể sử dụng các dịch vụ khác nhau mà chỉ cần đăng...

Giải thích và cấu hình ecs sử dụng load balancer trong aws

Giải thích và cấu hình ecs sử dụng load balancer trong aws

1. Mở đầu Nếu đã từng làm việc với AWS hẳn nhiều người cũng biết đến các dịch vụ Load Balancer (viết tắt là LB), ECS, EC2. Việc thao tác cấu hình luồng dữ liệu từ LB tới các service trong ECS thông qua EC2 khá là phức tạp nên bài này mình muốn ghi chú lại một số giải thích và cách cấu hình. Bài viết phần lớn dựa trên kinh nghiệm làm vi...

Một số ghi chú về AWS IAM

Một số ghi chú về AWS IAM

1.Giới thiệu. IAM viết tắt của dịch vụ Identity and Access Management. IAM có 4 nhóm chính đó là: User là người dùng, ví dụ công ty bạn có 5 dev và bạn muốn tạo tài khoản cho 5 dev này sử dụng thì bạn có thể tạo ra 5 User khác nhau rồi đưa password và username cho họ đăng nhập. Group là nhóm để phân nhóm các user với nhau, vì dụ bạn muốn ph&aci...

Ghi chú về EC2 và ECS trong AWS

Ghi chú về EC2 và ECS trong AWS

EC2 launch configuration: là thiết lập để khởi tạo EC2, trong đó có phần user data để khởi tạo hoặc kết nối tới ECS Load balancer: Để cân bằng tải tới các target (= EC2 instance) ECS ECS cluster: là 1 cụm các service. ECS service: Là khái niệm để nhóm các service task lại với nhau. Ví dụ một service clone dữ liệu có 3 container là 3 task chuyên đi clone...

Một số chú ý khi dùng Time, DateTime trong rails

Một số chú ý khi dùng Time, DateTime trong rails

Giả sử project rails của bạn set timezone là 'Tokyo' (có múi giờ 9 so với UTC 0): # config/application.rb ... config.time_zone = 'Tokyo' ...   Gọi Time.now và DateTime.now sẽ không trả về cho bạn thời gian của Tokyo mà là thời gian của timezone hiện tại, nghĩa là nếu bạn thực hiện câu lệnh đó trên server đang chạy ở Tokyo thì sẽ trả về thời gian hiện tại của Tokyo, nếu bạn đang thực hiện câu...

Một vài ghi chú về redux

Một vài ghi chú về redux

Store là nơi lưu trữ state, state chính là data của app. Muốn thay đổi data(state lưu trong store) của app, chỉ có cách là trigger reducer. Muốn trigger được reducer, chỉ có cách là dispatch một action nhất định nào đó. Ví dụ: Muốn thay đổi userInfo trong store, khai báo một reducer tên là changeUserInfo. Reducer...