10/10/2018, 00:03

Viết code thế nào để website chạy nhanh hơn?

Hi pà con, lâu nay chúng ta đã sử dụng mã nguồn mở rất nhiều nhưng chưa tự viết ra 1 bộ code hoặc 1 thư viện. Nếu tự viết một bộ thư viện thì cần các yếu tố nào? tổ chức ra sao? để website của chúng ta có thể đạt được tốc độ truy xuất tốt nhất. Các pác pro hãy góp ý để giúp các beginner PHP có thể nâng cao được kỹ năng và có thêm kinh nghiệm giúp cộng đồng PHP VN ngày càng phát triển vững mạnh.
Góp ý của các pác sẽ là những lời khuyên và kinh nghiệm quý báu đối với beginners (đặc biệt là đối với các newbie hạn chế về kinh phí mua hosting tốc độ cao).
ngochoavcu viết 02:10 ngày 10/10/2018
Việc nhanh hay không thì một phần là do bạn viết code truy xuất vào data là tí hay nhiêu, còn lại phần lớn là do Server bạn đặt thôi!
dungbeo113 viết 02:19 ngày 10/10/2018
Được gửi bởi ngochoavcu
Việc nhanh hay không thì một phần là do bạn viết code truy xuất vào data là tí hay nhiêu, còn lại phần lớn là do Server bạn đặt thôi!
Đấy là vấn đề của đa số các newbie mắc phải nên mới cần sự góp ý của các pác để truy xuất vào data ít nhưng vẫn lấy được nhiều thông tin mong muốn.
Hanaziki viết 02:17 ngày 10/10/2018
ở đây bác nên nói là tốt độ xử lý của "server và nội dung trang web tải về"
+ Server có ý nghĩa vô cùng quan trọng đến tốt độ xử lý code cũng như try xuất thông tin.
+ Nội dung web tải về bác nên viết sao cho càng ít càng tốt cở 10 - 40KB là ổn rồi (để giảnh cho dial up nữa)
+ Code thì bác nên viết làm sao càng ngăn càng tốt, tốt nhất nên kết hợp cơ chế cache "bộ nhớ hoặc tạo file temp" để sử dụng cho những lần tiếp theo.

Mấy cái đó chỉ là cơ bản thôi, bác làm nhiều thì tự nhiên sẻ có kinh nghiệm thôi ... chúc thành công. (có điều kiện thì nên học Zend nhé )
Lil Syh viết 02:14 ngày 10/10/2018
Được gửi bởi heopro90
đúng thế, ngoài server "xịn" ra thì còn phụ thuộc tốc độ đường truyền nữa. Cỡ như dial-up là hỏng bét !
Bậy nà, dial-up vẫn nhanh hơn ADSL chứ )
zoejoe viết 02:09 ngày 10/10/2018
Được gửi bởi Lil Syh
Bậy nà, dial-up vẫn nhanh hơn ADSL chứ )
Nghĩ sao vậy trời, dial-up mà nhanh thì ai lại chuyển sang ADSL nữa ??
bka viết 02:08 ngày 10/10/2018
trong php và MYSQL thì các bác chỉ cần selec những gì cần lấy ra mà thui .
đừng dùng selec * . tạo Table đúng với mục đích của website tránh tình trạng dư thừa. còn lại nhanh hay chậm là chuyện của "server và nội dung trang web tải về"
zoejoe viết 02:07 ngày 10/10/2018
Được gửi bởi bka
trong php và MYSQL thì các bác chỉ cần selec những gì cần lấy ra mà thui .
đừng dùng selec * . tạo Table đúng với mục đích của website tránh tình trạng dư thừa. còn lại nhanh hay chậm là chuyện của "server và nội dung trang web tải về"
Em lập trình web thì thấy rằng trong lúc select thì phần lớn em vẫn hay select *, ít khi em select những trường cần thiết vì lỡ cần cái gì thì mắc công lục lại mấy cái class mà chỉnh code lại lắm

Nhiều người cho rằng lập trình web nên làm cho code đơn giản và tối ưu hóa (giống như lập trình pascal vậy đó : Ngắn gọn nhưng đầy đủ) => giảm thiểu CPU + Ram host. Thế nhưng em vẫn không thích viết kiểu đó vì nó làm cho công việc trở nên chậm chạp mà chất lượng chưa chắc đã mỹ mãn. Chụi khó làm code dài ra một tí mà nhanh hơn, suy luận logic đơn giản hơn và cũng dễ sửa lỗi mỗi khi bị B*mb
</3 viết 02:14 ngày 10/10/2018
Chúng ta có thể dùng ab của Apache để đo tốc độ.

Code:
Benchmarking ddth.vn (be patient).....done


Server Software:        Apache
Server Hostname:        ddth.vn
Server Port:            80

Document Path:          /
Document Length:        140960 bytes

Concurrency Level:      1
Time taken for tests:   209.593750 seconds
Complete requests:      100
Failed requests:        98
   (Connect: 0, Length: 98, Exceptions: 0)
Write errors:           0
Total transferred:      14152649 bytes
HTML transferred:       14119371 bytes
Requests per second:    0.48 [#/sec] (mean)
Time per request:       2095.938 [ms] (mean)
Time per request:       2095.938 [ms] (mean, across all concurrent requests)
Transfer rate:          65.94 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   5.0      0      15
Processing:   937 2093 1520.8   1671    9968
Waiting:      875 1976 1515.2   1546    9890
Total:        937 2095 1520.3   1671    9968
zoejoe viết 02:14 ngày 10/10/2018
Được gửi bởi </3
Chúng ta có thể dùng ab của Apache để đo tốc độ.

Code:
Benchmarking ddth.vn (be patient).....done


Server Software:        Apache
Server Hostname:        ddth.vn
Server Port:            80

Document Path:          /
Document Length:        140960 bytes

Concurrency Level:      1
Time taken for tests:   209.593750 seconds
Complete requests:      100
Failed requests:        98
   (Connect: 0, Length: 98, Exceptions: 0)
Write errors:           0
Total transferred:      14152649 bytes
HTML transferred:       14119371 bytes
Requests per second:    0.48 [#/sec] (mean)
Time per request:       2095.938 [ms] (mean)
Time per request:       2095.938 [ms] (mean, across all concurrent requests)
Transfer rate:          65.94 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   5.0      0      15
Processing:   937 2093 1520.8   1671    9968
Waiting:      875 1976 1515.2   1546    9890
Total:        937 2095 1520.3   1671    9968
Là sao hả anh. Anh chỉ cách đo đi để em làm thử ?
Bài liên quan
0