@sven_9x Bạn để ý là await chỉ dùng được ở trong những hàm async thôi. Nếu chưa rõ về cái này, bạn nên tìm hiểu về promise, async/await trước. Với cái vue-froala-wysiwyg mình vừa thử xem thì thấy nó chỉ cho cài đặt dưới dạng plugin global (tức qua Vue.use(VueFroala)). Bạn thử dùng package gốc froala-editor rồi tự cài đặt nó vào một component, tức không dùng qua plugin sẵn vue-froala-wysiwyg nữa xem?
@tranxuanthang mình chỉ dùng froala ở trang tạo bài và xem chi tiết bài thôi bạn. Cái await bạn bảo thì mình dùng package vue-frola thì để như bạn nó báo lỗi này?
@sven_9x Như mình thấy thì cái froala-editor hiển nhiên là đang chiếm kích thước lớn ở vendor (gần 1/2 cái vendor). Vendor là phần js mà sẽ bị load khi tải ở mọi trang, nên các thư viện có trong vendor sẽ bị tải ngay cả khi route người dùng đang vào có cần thư viện đó hay không. Vậy nên bạn thử bắt đầu bằng cách xử lý cái froala-editor trước xem?
Thường các hướng giải quyết sẽ là thế này:
Bạn tìm những nơi import cái froala-editor ở trong những file entrypoint (ở project vue-cli bình thường thì là ở main.js còn ở project nuxt thì có thể rải rác ở các file trong /app/plugins) và gỡ bỏ nó ở đấy.
Ở những component mà thực sự cần đến froala-editor thì bạn mới import nó vào
Nâng cao hơn chút, bạn có thể áp dụng thêm webpack code splitting, tức thay vì
Mình không thể chỉ ra rõ 100% vì mình không rõ project của bạn phụ thuộc cái froala-editor đến đâu, có cần thiết ở mọi route không. Nên tự bạn cần thử nghiệm sửa đổi xem, và sau mỗi lần sửa thì thử chạy lại webpack-bundle-analyzer xem những gì bạn vừa làm hiệu quả đến đâu.
Còn về BE: có thể tạo 1 queue để xử lý tuần tự / đồng thời theo một limit nhất định hoặc limit by id từ client gửi lên trong khoảng thời gian cho phép.
Xin chào, xin lỗi vì reply muộn. Theo mình biết thì RepVGG-A0-deploy.pth là model được extract từ PyTorch, vì vậy nếu muốn sử dụng cho TF2 thì bạn cần convert model về TF2 trc. Bạn có thể sử dụng ONNX để hỗ trở chuyển đổi.
Lâu lắm mình không vào viblo rồi không ngờ bài này vẫn còn nhiều người đọc
Đầu tiên mình cảm ơn bạn vì những ý kiến của bạn nhưng có một số thực tế như thế này
1, Cái này thì đúng nhưng nếu sử dụng locking 1 cách chính xác thì sẽ giảm thiểu được tối đa số lỗi gặp phải, nhưng lại sảy ra nhiều case deadlock
2, Đúng là trong MySQL, Postgres,... và nhiều csdl quan hệ khác thì trigger sẽ ít được sử dụng và thậm chí còn không được support. Nhưng theo mình biết và tìm hiểu thì trong MsSQL, Oracle thì Trigger và stored procedure vẫn thường xuyên được sử dụng.
Như vài hệ thống ngân hàng mình có được bạn bè share mấy câu query đơn giản thì vẫn thấy họ dùng 2 thằng này thường xuyên. Miễn là bạn chỉ sử dụng dữ liệu của 1 record thì việc cập nhật sẽ không tốn nhiều tài nguyên và thời gian.
Còn csdl có data lớn hay gọi cách khác là bigdata thì nó có cơ chế save và index hoàn toàn khác biệt, bạn có thể tham khảo thằng này Treasuredata, 1 table của bạn chỉ có vài trăm hoặc vài ngìn record nhưng query theo kiểu bigdata thì mỗi query sẽ mất đến vài phút .
@tungtv ID là auto increment. mình đâu cần thiết phải thêm vào ạ?
nếu để cùng name thì nó báo lỗi unique thôi chứ kp deadlock. e đang mô phỏng lại bài toán của hệ thống em 1 cách đơn giản thông qua link bài viết e đính kèm ạ: http://thushw.blogspot.com/2010/11/mysql-deadlocks-with-concurrent-inserts.html
Và thực tế, hệ thống của e insert với value bình thường chứ k đặc biệt như a nói vẫn deadlock đấy ạ. Còn e đang không tái hiện được qua ví dụ mô phỏng
à ý là như thế này:
File webpack của mình hiện tại đang như thế này lúc mới cài Laravel mix:
mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css');
xong mình có thêm một số file CSS của mình vào đây để complie:
mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css') .sass('resources/sass/my.scss', 'public/css');
rùi khi mình cài React chẳng hạn, thì hệ thống nó chạy để cài React vào hệ thống của mình nó viết lại file Webpack như vầy:
mix.react('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css');
nghe ra có vẻ hơi vô lý nhưng mình bị 02 lần rùi, một lần cài Vue và một lần cài React.
THẢO LUẬN
Không cập nhật cho phiên bản 1.47.2 nha chủ thớt
@sven_9x Bạn để ý là
awaitchỉ dùng được ở trong những hàmasyncthôi. Nếu chưa rõ về cái này, bạn nên tìm hiểu về promise, async/await trước. Với cáivue-froala-wysiwygmình vừa thử xem thì thấy nó chỉ cho cài đặt dưới dạng plugin global (tức quaVue.use(VueFroala)). Bạn thử dùng package gốcfroala-editorrồi tự cài đặt nó vào một component, tức không dùng qua plugin sẵnvue-froala-wysiwygnữa xem?@tuanbacyen Vâng bạn. Mong website phát triển hơn để nhiều người học hỏi
@tranxuanthang mình chỉ dùng froala ở trang tạo bài và xem chi tiết bài thôi bạn. Cái await bạn bảo thì mình dùng package vue-frola thì để như bạn nó báo lỗi này?
@sven_9x Như mình thấy thì cái froala-editor hiển nhiên là đang chiếm kích thước lớn ở vendor (gần 1/2 cái vendor). Vendor là phần js mà sẽ bị load khi tải ở mọi trang, nên các thư viện có trong vendor sẽ bị tải ngay cả khi route người dùng đang vào có cần thư viện đó hay không. Vậy nên bạn thử bắt đầu bằng cách xử lý cái froala-editor trước xem?
Thường các hướng giải quyết sẽ là thế này:
Nâng cao hơn chút, bạn có thể áp dụng thêm webpack code splitting, tức thay vì
Thì bạn sửa thành
Khi làm vậy, webpack sẽ thực hiện code-splitting, tức bỏ mã nguồn của package vào file riêng chứ không cho cùng vào file script của component hay ở vendor nữa. Có article hướng dẫn thêm về cái này ở https://vueschool.io/articles/vuejs-tutorials/lazy-loading-and-code-splitting-in-vue-js/
Mình không thể chỉ ra rõ 100% vì mình không rõ project của bạn phụ thuộc cái froala-editor đến đâu, có cần thiết ở mọi route không. Nên tự bạn cần thử nghiệm sửa đổi xem, và sau mỗi lần sửa thì thử chạy lại webpack-bundle-analyzer xem những gì bạn vừa làm hiệu quả đến đâu.
@le.vinh.thien desktop thì mình 9x rồi cơ mà mobile thì nó bị thấp ý bạn. nên mình muốn tối ưu hơn
@le.vinh.thien @tranxuanthang mình chạy build analyze thì report như này thì có thể tối ưu đc cái nào nhỉ b?
Ngắn gọn xúc xích, 10đ
Có thể dùng lập trình hàm không bạn?
@longhiryu chắc đây là những hàm build sẵn của larave mix cho phép user dùng react or vue or angular or xxx.
với mỗi project chỉ nên dùng 1 FE framework thôi nên việc setup dùng framework nào hãy làm ngay từ ban đầu.
Việc bạn đổi qua lại sẽ khiến việc setup này bị làm lại từ đầu nên file của bạn sẽ bị đổi.
@Plumpboy có phải muốn add bank account thì cần tạo customer trước ko anh. như kiểu add bank account to custmer
Xin chào, xin lỗi vì reply muộn. Theo mình biết thì RepVGG-A0-deploy.pth là model được extract từ PyTorch, vì vậy nếu muốn sử dụng cho TF2 thì bạn cần convert model về TF2 trc. Bạn có thể sử dụng ONNX để hỗ trở chuyển đổi.
Lâu lắm mình không vào viblo rồi không ngờ bài này vẫn còn nhiều người đọc
Đầu tiên mình cảm ơn bạn vì những ý kiến của bạn nhưng có một số thực tế như thế này
1, Cái này thì đúng nhưng nếu sử dụng locking 1 cách chính xác thì sẽ giảm thiểu được tối đa số lỗi gặp phải, nhưng lại sảy ra nhiều case deadlock
2, Đúng là trong MySQL, Postgres,... và nhiều csdl quan hệ khác thì trigger sẽ ít được sử dụng và thậm chí còn không được support. Nhưng theo mình biết và tìm hiểu thì trong MsSQL, Oracle thì Trigger và stored procedure vẫn thường xuyên được sử dụng.
Như vài hệ thống ngân hàng mình có được bạn bè share mấy câu query đơn giản thì vẫn thấy họ dùng 2 thằng này thường xuyên. Miễn là bạn chỉ sử dụng dữ liệu của 1 record thì việc cập nhật sẽ không tốn nhiều tài nguyên và thời gian.
Còn csdl có data lớn hay gọi cách khác là bigdata thì nó có cơ chế save và index hoàn toàn khác biệt, bạn có thể tham khảo thằng này Treasuredata, 1 table của bạn chỉ có vài trăm hoặc vài ngìn record nhưng query theo kiểu bigdata thì mỗi query sẽ mất đến vài phút
.
Một lần nữa cảm ơn bạn
phần tạo card, với tạo customer thì em làm đc rồi. nhưng task mới yêu cầu add bank account em chưa hiểu lắm.
@tungtv ID là auto increment. mình đâu cần thiết phải thêm vào ạ? nếu để cùng name thì nó báo lỗi unique thôi chứ kp deadlock. e đang mô phỏng lại bài toán của hệ thống em 1 cách đơn giản thông qua link bài viết e đính kèm ạ: http://thushw.blogspot.com/2010/11/mysql-deadlocks-with-concurrent-inserts.html Và thực tế, hệ thống của e insert với value bình thường chứ k đặc biệt như a nói vẫn deadlock đấy ạ. Còn e đang không tái hiện được qua ví dụ mô phỏng
à ý là như thế này: File webpack của mình hiện tại đang như thế này lúc mới cài Laravel mix: mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css');
xong mình có thêm một số file CSS của mình vào đây để complie: mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css') .sass('resources/sass/my.scss', 'public/css');
rùi khi mình cài React chẳng hạn, thì hệ thống nó chạy để cài React vào hệ thống của mình nó viết lại file Webpack như vầy: mix.react('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css');
nghe ra có vẻ hơi vô lý nhưng mình bị 02 lần rùi, một lần cài Vue và một lần cài React.
@tungtv hi b. Mình đang tập trung hoàn thiện series Postgres trước. Series này cũng nhiều thứ nên cần trau chuốt cẩn thận hơn. Tạm thời pending
bạn cho mình hỏi bạn học thạc sĩ ở đâu vậy ạ, ở Việt Nam học thạc sĩ AI thì nên học ở đâu ạ