Tôi đã xem qua số this blog post, mà tôi thấy tuyệt vời và khai sáng, cho biết cách tạo khung tin nhắn có độ dài cố định được gửi tới máy chủ socket Akka IO. Tôi đã làm việc với một thư viện mã nguồn mở tôi tìm thấy here called ScalaBuff, tạo ra một lớp mỏng đẹp trên đầu các đối tượng đệm giao thức.Thông báo bộ đệm giao thức qua Akka IO và Sockets
Sự cố tôi gặp phải là thích ứng với mã của tác giả blog (không thể tìm thấy liên kết để liên hệ trực tiếp với anh) để lấy độ dài (chuỗi 4 byte) và sau đó là mảng byte protobuf. Tôi có thể lo lắng về việc tìm ra thông điệp nào trên dây sau này, ngay bây giờ tôi chỉ muốn lấy mã để làm việc với một tin nhắn mẫu.
Vấn đề của tôi là tôi đang gặp sự cố khi chuyển đổi mã Akka IO từ việc kéo ByteStrings akka thành có thể gửi và kéo các byte thô từ thư protobuf. Đây là một triệu chứng của sự thiếu hiểu biết của tôi với các máy chủ socket sử dụng Akka IO. Tôi có thể nhận được và từ biểu diễn byte của đối tượng protobuf của tôi (một Zombie Sighting), nhưng tôi không thể lấy mẫu từ blog để làm việc trên mảng byte thay vì chuỗi.
Nếu có ai đó có một số lời khuyên, một số mã mẫu hoặc một số đầu vào về cách lấy điểm A (bài đăng blog được đề cập ở trên) đến điểm B (máy khách socket Akka IO gửi thông báo protobuf tới ổ cắm Akka IO máy chủ .. Tôi nghĩ rằng tôi có khách hàng làm việc .. có thể), đó sẽ là tuyệt vời.
Hóa ra vấn đề của tôi không liên quan gì đến Akka IO hoặc thậm chí là Scala. Khi tôi đã gửi, tôi đã gửi những gì lên đến một đại diện "toString" của mảng byte protobuf chứ không phải là mảng byte thực tế được chuyển đổi đúng thành chuỗi. –