Skynet 1.1
Sau nhiều ngày chần chừ, cuối cùng cũng quyết định chính thức phát hành skynet 1.1.
So với lần cập nhật trước, ngoài những bản sửa lỗi nhỏ lẻ, chúng tôi còn thực hiện một loạt thay đổi quan trọng và tối ưu hóa hệ thống.
Tất cả các mô-đun Lua trong skynet đã được chuẩn hóa với tiền tố “skynet”, đồng thời một số trình điều khiển cơ sở dữ liệu được sắp xếp gọn gàng dưới không gian tên skynet.db. Để hỗ trợ ngược phiên bản 1.0, bạn chỉ cần thêm thư mục lualib/compat10 vào cấu hình hệ thống là có thể sử dụng các đường dẫn cũ một cách mượt mà.
Đặc biệt đáng chú ý là cải tiến vượt bậc ở luồng mạng dành cho các ứng dụng có khối lượng ghi dữ liệu lớn. Trong một dự án thực tế, hiệu suất hệ thống đã được nâng cao tới 3.5 lần so với trước đó.
Bản cập nhật lần này còn giới thiệu một mô-đun hoàn toàn mới mang tên DataSheet - giải pháp thay thế ưu việt cho ShareData, mang đến trải nghiệm quản lý dữ liệu đa chiều.
Xuất phát từ việc nhận thấy nhiều nhà phát triển gặp sự cố hệ thống do sử dụng không đúng cách các mô-đun mở rộng C, chúng tôi đã tích hợp sẵn giao diện gỡ lỗi vào API cấp phát bộ nhớ skynet. Tính năng này có thể kích hoạt bằng cách thêm macro MEMORY_CHECK
khi tiến hành build hệ thống. Ví dụ cụ thể, trên nền tảng Linux bạn có thể sử dụng lệnh make linux SKYNET_DEFINES=-DMEMORY_CHECK
.
Ngoài ra, cần lưu ý với các lập trình viên khi xây dựng các mô-đun mở rộng Lua bằng C. Rất nhiều trường hợp gặp crash do tràn ngăn xếp Lua - vấn đề hoàn toàn có thể phòng tránh bằng cách thêm macro LUA_USE_APICHECK
khi biên dịch Lua.
Sự cải tiến của skynet 1.1 không chỉ thể hiện ở hiệu suất vượt trội mà còn phản ánh triết lý phát triển lấy người dùng làm trung tâm, hướng tới xây dựng một hệ sinh thái phát triển game ổn định và hiệu quả hơn.