Skip to main content

Posts

Bắt đầu với Docker?

Docker là một dự án nguồn mở làm cho việc tạo và quản lý các container Linux thực sự dễ dàng. Các container giống như các máy ảo cực nhẹ - chúng cho phép code hoạt động cách ly với các container khác nhưng chia sẻ an toàn các tài nguyên của máy. Docker container có thể khởi động rất nhanh (tính bằng mili giây) mang lại sự linh hoạt chưa từng thấy trong việc quản lý tải trên toàn bộ cụm của bạn. Chẳng hạn, thay vì chạy chef trên mỗi máy ảo của bạn, nó sẽ nhanh hơn và đáng tin cậy hơn khi hệ thống xây dựng của bạn tạo ra một container và khởi chạy nó trên các máy chủ Linux thích hợp. Hướng dẫn này sẽ chỉ cho bạn cách khởi chạy container, cài đặt một số phần mềm trên nó, đảm bảo rằng container và tùy chọn khởi chạy nó trên một máy Linux khác. Trước khi bắt đầu, đảm bảo rằng bạn đã có ít nhất một máy Linux và chạy - hãy thử nó trên Amazon EC2 hoặc local với Vagrant Thông tin cơ bản về Docker CLI Docker có một CLI đơn giản cho phép bạn làm hầu hết mọi thứ bạn có thể muốn cho một c...

Groovy là gì - Khác nhau giữa Groovy và Java

Groovy  là 1 ngôn ngữ  dynamic typing ,  được rất nhiều người sử dụng vì tính linh hoạt của nó.  Groovy được biết đến như là một thế hệ mới thay thế Java.  Groovy sử dụng trình biên dịch Java và hoàn toàn chạy trên JVM, nó cũng được dịch ra bytecode như Java và ngoài ra còn cung cấp sự ổn định và tin cậy của Java một cách tốt hơn, linh hoạt hơn. Mặc dù Java là một ngôn ngữ lập trình rất tốt và được sử dụng rộng rãi nhưng thực hiện một số nhiệm vụ như thao tác xử lý chuỗi và xử lý file là một vấn đề trong Java.  Sử dụng Groovy, người ta có thể xử lý những vấn đề đó  một cách rất linh động và dễ dàng.  Các file Groovy có phần mở rộng là '.groovy' và không giống như Java, chúng ta không cần đặt dấu chấm phẩy sau mỗi câu lệnh.  Nếu bạn thành thạo Java thì sẽ rất dễ dàng để tìm hiểu làm quen với groovy.  Có một số điểm tương đồng và một số khác biệt giữa Java và  Groovy  , một số trong số chúng được liệt kê dưới đây:  ...

Tìm hiểu về luồng (Thread)

Ngày nay, với sự phát triển với tốc độ chóng mặt của khoa học kỹ thuật, một kỷ nguyên mới được mở ra, kỷ nguyên của công nghệ thông tin. Nhu cầu của loài người ngày càng lớn, đặc biệt là các ngành khoa học kỹ thuật khác đều cần đến sự hổ trợ của công nghệ thông tin, mặc dù công nghệ phần cứng phát triển rất nhanh, CPU với tốc độ xử lý ngày càng cao, nhưng lại nảy sinh nhiều bài toán trong thực tế sản xuất đòi hỏi phải xử lí nhanh hơn nữa. Vấn đề xử lý song song đang ngày càng được nghiên cứu nhiều để giải quyết một số bài toán mà thực tiễn đang đặt ra, những vấn đề cần có kết quả trong thời gian thực như: bài toán dự báo thời tiết, điều tiết giao thông, điều khiển các con tàu vũ trụ,các bài toán về mô phỏng…Vì vậy, việc nghiên cứu các giải thuật cho xử lý song song là một yêu cầu và là một thách thức cho các nhà khoa học liên quan đến khoa học máy tính. Trong bài viết này mình và các bạn cùng đi tìm hiểu về khái niệm và cơ chế của đa luồng       1. Khái niệm - L...

Thuật toán RSA và ứng dụng

Trong mật mã học, RSA là một thuật toán mật mã hóa khóa công khai. Đây là thuật   toán đầu tiên phù hợp với việc tạo ra chữ ký điện tử đồng thời với việc mã hóa. Nó   đánh dấu một sự tiến bộ vượt bậc của lĩnh vực mật mã học trong việc sử dụng khóa   công cộng. RSA đang được sử dụng phổ biến trong thương mại điện tử và được   cho là đảm bảo an toàn với điều kiện độ dài khóa đủ lớn. Thuật toán được Ron Rivest, Adi Shamir và Len Adleman mô tả lần đầu tiên vào   năm 1977 tại Học viện Công nghệ Massachusetts (MIT). Tên của thuật toán lấy từ   3 chữ cái đầu của tên 3 tác giả. Trước đó, vào năm 1973, Clifford Cocks, một nhà toán học người Anh làm việc tại   GCHQ, đã mô tả một thuật toán tương tự. Với khả năng tính toán tại thời điểm đó   thì thuật toán này không khả thi và chưa bao giờ được thực nghiệm. Tuy nhiên,   phát minh này chỉ được công bố vào năm 1997 vì được xếp vào loại tuyệt mật. Thuật toán RSA đư...