Tôi đã tối ưu TTFB như thế nào

Discussion in 'Thảo Luận Chung' started by money, Nov 20, 2020.

  1. command

    command Bang Chúng

    Năm nay, a đi Tây Bắc hóng gió nhiều hơn :)

    Theo e đọc thông tin trên VPS của Contabo, e ko thấy VPS hỗ trợ local IP để kết nối trực tiếp giữa các VPS với nhau. A dùng public IP để web server request vào ES hở anh?
     
  2. money

    money Hương Chủ

    Uh, anh public IP rồi dùng query DSL của ES gọi trực tiếp. Cách này nhanh hơn tí xíu và bảo mật hơn vì mình có thế cho phép IP nào access ES.
    Có ElasticsearchPHP để call dễ hơn nhưng anh ko xài nên cũng ko rõ nó bảo mật tốt ko (vì ko rõ nên anh đánh giá cách kia bảo mật hơn :D ). Còn cách này chắc chắn chậm hơn tí xíu vì nó phải qua 1 lần thông dịch của php sang es dsl.
     
    command likes this.
  3. command

    command Bang Chúng

    Thanks anh @money đã thông giúp các thông tin bổ sung để e nghiên cứu chuyển đổi CSDL sang ES.
     
  4. AkuVn

    AkuVn Hương Chủ

    EDM and money like this.
  5. sincos

    sincos Bang Chúng

    Solution: Cache verythings on RAM
     
    Cái bang likes this.
  6. solice

    solice Khách Qua Đường

    Anh em cho hỏi ngu xíu. Chưa xài ES lần nào. mới reserch gg xong. vẫn còn thắc mắc.
    1. ví dụ site text mình chơi full file html. Es nó tự mò vô thư mục chứa file để index hay sao nhỉ.
    2. vs 1 cái nữa nếu nó index toàn bộ content của site thì thành ra mình đang chạy 2 core db luôn đúng ko?
    3. là 1 cái db mysql nó tự mò vô index hay phải khai báo nó index cái gì
    :D tổng hợp các câu hỏi ngu của mình. mấy bác xem giúp. do chưa code nó nên ko hiểu nhiều.
     
  7. money

    money Hương Chủ

    1. ES là 1 search engine, nó đánh index = cách đọc từ các cơ sở dữ liệu khác như csv, mysql, json, ... bằng cách chạy các tool import riêng (có sẵn). Tool sẽ đọc data, đẩy vào ES và ES tạo index để hỗ trơ việc tìm kiếm nhanh. Nếu muốn nó đọc được html của bạn thì bạn phải viết tool (hoặc tìm tool có sẵn - cái này mình ko biết)
    2. Chính xác là sẽ có 2 DB: 1 db lưu data như cũ (mysql, mongo, hay bất cứ cái gì mà bạn đang lưu data) và 1 "DB" là của ES (dùng ngoặc kép vì thật ra ES nó ko gọi là DB nhưng cứ nói thế cho dễ hiểu). Nếu ko quá quan trọng thì sau khi ES index, xóa DB cũ đi cũng ko sao. Riêng mình vẫn giữ DB cũ.
    3. Muốn ES import data từ mysql thì phải tạo template index trên ES (nôm na kiểu như tạo database và các table liên quan trong mysql ấy) sau đó dùng logstash đọc mysql để đẩy vào ES. Cái này thì đọc tài liệu để hiểu chi tiết.
     
  8. noenmo

    noenmo Sơ Nhập Giang Hồ

    đỉnh cao, bác @money cho em xin cái skype hay fb được không? em triển vụ ES mà mệt quá, tốc độ query nhanh nhất theo term (id) cũng chỉ 4ms, chứ match thì thôi rồi, cho thêm cái sort nữa thì chán luôn.