Nếu app mobile của bạn code native (iOS, Android) thì mình không chắc có support Laravel-Echo, nhưng nếu bạn code bằng React Native thì có thể dùng socket.io-client+laravel-echo hệt như làm với trình duyệt để chat realtime nhé, mình cũng đã thử test và chạy bình thường (ở trên google có rất nhiều tut hướng dẫn nhé bạn )
@watanabeuk
Nhân tiện mình cũng thử qua tiki xem có khác shopee không thì mình cũng phát hiện ra họ render đẩy đủ nội dung HTML rất nhanh.
Mà bên tiki xây dựng trên Reactjs. Nên khả năng cao họ sử dụng Server-side-rendering nha bạn.
Chào @watanabeuk
Mình đã thử kiểm tra trang sản phẩm của Shopee và muốn giải thích với bạn như sau:
Bởi vì việc browser nhận về 1 trang web sẽ load đầy đủ các tài nguyên html, css, js đã được render sẵn. Theo như mình quan sát source view của trang shoppe render ra thì ko thấy có sự xuất hiện của html render ra nội dung.
Mà shoppe đang chạy SEO rất tốt. Thì có nghĩa là người dùng đang nhận dc 1 phiên bản SPA.
Còn bọ google đang nhận được bản rendering đầy đủ html được điều hướng riêng.
Shopee là 1 trang web có nội dung động, cập nhật liên tục lên rất có khả năng họ sẽ sử dụng dynamic rendering bởi vì đang tạo ra 2 điều hướng khác nhau giữa người dùng và bot. Việc sử dụng pre-rendering cũng có 2 điều hướng như vậy nhưng do thời gian cached sẽ ko phù hợp với shopee.
Vì mình nghĩ pre-rendering chỉ phù hợp vs trang blog, tin tức, có ít cập nhật thời gian thực.
Còn với server-side-rendering thì người dùng sẽ nhận dc mã html nội dung đầy đủ.
Nên mình kết luận là Shoppe sử dụng giải pháp dynamic rendering ( 75% ).
Một nền tảng lớn ẩn chứa nhiều kiến trúc công nghệ độc quyền nên mình ko thể khẳng định chắc chắn về cách họ xây dựng công nghệ bên trong. dc.
Sau đó ở docker-compose.yml e chỉ mount volumes file testB, sau đó chạy và thử exec vào thì e sẽ không thấy file A do đã được ignore từ trước
A hiểu vì sao e nghĩ như vậy. Vì bây giờ e đang mount volumescả folder bên ngoài nên toàn bộ file bên ngoài sẽ có trong container lúc chạy, do đó e không thấy chúng được ignore.
Vậy nên là dockerignore vẫn hoạt động bình thường nhé, chẳng qua là do việc e mount volumes đã "ghi đè" nó dẫn tới việc các file vẫn còn ở đó dù đã ignore
THẢO LUẬN
cám ơn bạn
Bài viết hay quá :3
ok bác, có gì e log bug lên đây
PHPUnit 8 có một số thay đổi breaking change, mình cũng chưa thử, bạn cứ thử xem nhé, có lỗi thì debug thôi : ))
Nếu app mobile của bạn code native (iOS, Android) thì mình không chắc có support Laravel-Echo, nhưng nếu bạn code bằng React Native thì có thể dùng
)
socket.io-client+laravel-echohệt như làm với trình duyệt để chat realtime nhé, mình cũng đã thử test và chạy bình thường (ở trên google có rất nhiều tut hướng dẫn nhé bạnĐến cả con khỉ cũng hiểu được lệnh Git.
Tiếp phần II bạn ơi.
Chào bạn, mình đang muốn làm phần chat cho App Mobile thì không biết kết nối như thế nào! Mình cảm ơn!
chào bác, hiện tại e đang sử dụng version ^8 của phpunit vậy thì chỉ cần chỉnh sửa composer.json là follow theo code của bác đc đúng k ạ
Cảm ơn bài viết của bạn nhé!
quá tuyệt
bí quyết để có một website câu nhiều khách hàng là đây.
Cám ơn b nha
cảm ơn bạn, bên mình outsource nên phụ thuộc từng dự án bạn ạ, có design thì là do KH gửi
chỉ là dạo chơi
ông dính bao nhiêu tag này roài :v
@watanabeuk Nhân tiện mình cũng thử qua tiki xem có khác shopee không thì mình cũng phát hiện ra họ render đẩy đủ nội dung HTML rất nhanh. Mà bên tiki xây dựng trên Reactjs. Nên khả năng cao họ sử dụng Server-side-rendering nha bạn.
Chào @watanabeuk Mình đã thử kiểm tra trang sản phẩm của Shopee và muốn giải thích với bạn như sau:
Bởi vì việc browser nhận về 1 trang web sẽ load đầy đủ các tài nguyên html, css, js đã được render sẵn. Theo như mình quan sát source view của trang shoppe render ra thì ko thấy có sự xuất hiện của html render ra nội dung.
Mà shoppe đang chạy SEO rất tốt. Thì có nghĩa là người dùng đang nhận dc 1 phiên bản SPA.
Còn bọ google đang nhận được bản rendering đầy đủ html được điều hướng riêng.
Shopee là 1 trang web có nội dung động, cập nhật liên tục lên rất có khả năng họ sẽ sử dụng dynamic rendering bởi vì đang tạo ra 2 điều hướng khác nhau giữa người dùng và bot. Việc sử dụng pre-rendering cũng có 2 điều hướng như vậy nhưng do thời gian cached sẽ ko phù hợp với shopee.
Vì mình nghĩ pre-rendering chỉ phù hợp vs trang blog, tin tức, có ít cập nhật thời gian thực.
Còn với server-side-rendering thì người dùng sẽ nhận dc mã html nội dung đầy đủ.
Nên mình kết luận là Shoppe sử dụng giải pháp dynamic rendering ( 75% ).
Một nền tảng lớn ẩn chứa nhiều kiến trúc công nghệ độc quyền nên mình ko thể khẳng định chắc chắn về cách họ xây dựng công nghệ bên trong.
dc.
e cũng hiểu í anh ns rồi
, e cảm ơn nhé
Vẫn hoạt động bình thường e nhé
.
1 ví dụ cụ thể hơn chứng minh điều này:
.dockerignoree ignore 2 filetestAvàtestB.docker-compose.ymle chỉ mountvolumesfiletestB, sau đó chạy và thửexecvào thì e sẽ không thấy file A do đã được ignore từ trướcA hiểu vì sao e nghĩ như vậy. Vì bây giờ e đang mount
volumescả folder bên ngoài nên toàn bộ file bên ngoài sẽ có trong container lúc chạy, do đó e không thấy chúng được ignore.Vậy nên là
dockerignorevẫn hoạt động bình thường nhé, chẳng qua là do việc e mountvolumesđã "ghi đè" nó dẫn tới việc các file vẫn còn ở đó dù đã ignore