Giới thiệu vấn đề
Mình tin đây là vấn đề mà nhiều người đặt làm website không quan tâm. Miễn cứ có website giao diện đẹp đẹp là được rồi, quan tâm chi nó làm bằng cách nào. Ngay lúc đó bạn chưa thấy tai hại, nhưng khi có vấn đề phát sinh, bạn sẽ đau đầu và tốn tiền vì nó đấy. Ở bài này, mình sẽ phân tích ra tại sao bạn phải quan tâm đến vấn đề này.
Để có một website cần những thành phần sau:
- 1 là ngôn ngữ và môi trường lập trình,
- 2 là database là nơi lưu trữ và quản lý cơ sở dữ liệu của website,
- 3 là một phần mềm hệ thống quản lý và vận hành website của bạn trên máy chủ.
Về ngôn ngữ lập trình phía server
Hiện có một số ngôn ngữ được sử dụng phổ biến như sau: Php, Asp.net, Asp, Java, Python, JavaScript v.v.. Cùng lướt qua bảng so sánh các loại ngôn ngữ này nhé. Còn rất nhiều ngôn ngữ lập trình web khác tuy nhiên độ phổ biến nó không cao, cụ thể hơn là ở Việt Nam, do đó mình sẽ không trình bày trong bảng so sánh này.
Ngôn ngữ
Tốc độ xử lý
Chi phí
Thời gian phát triển
Nhà cung cấp hosting
Đơn vị phát triển ngôn ngữ
Hệ điều hành
Phù hợp với
Framwork
Mã nguồn mở
Cộng đồng lập trình viên
Tính bảo mật
Ai đang sử dụng
Php
Nhanh
Xây dựng và vận hành miễn phí
Nhanh , đơn giản
Nhiều
Nhóm phát triển
Linux và windows
Nhu cầu website căn bản
Rất nhiều
Rất nhiều dự án mã nguồn mở
Rất lớn
Thấp, do tính mở của nó
Yahoo, Facebook, Google, NASA, W3C
Asp.net
Nhanh
Phải mua phần mềm để vận hành
Nhanh, đơn giản
Nhiều
Microsoft
Chỉ Windows
Hệ thống web của doanh nghiệp
Ít
Tương đối
Lớn
Tương đối, do một phần được Microsoft hổ trợ
StackOverflow, PlentyOfFish.com, MySpace
Java
Chậm
Phải mua phần mềm để vận hành
Lâu, phức tạp
Hiếm
Oracle
Linux và Windows
Hệ thống web doanh nghiệp và ngân hàng
Ít
Ít hơn
Ít
Cao , do tính phức tạp của nó
chinhphu.vn, viettel ,một số ngân hàng
Về ngôn ngữ lập trình phía client
Javascript, Css, Html là 3 ngôn ngữ mà các trình duyệt đều hổ trợ. Vì tính bắt buộc của nó nên gần như chẳng có điều gì để nói.
Về database lưu trữ
Có rất nhiều hệ quản trị cơ sở dữ liệu : Mysql, Sql Server, Oracle, PostgreSql, DB2,v.v… Để lập trình web phổ biến người ta sẽ dùng 3 hệ quản trị sau, mình sẽ overwiew qua và so sánh một số đặc điểm của chúng. Những DB còn lại phổ biến trong các hệ thống đặc thù hơn do đó mình sẽ không trình bày.
Database
Mã nguồn
Đơn vị chủ quản
Chi phí
Hệ điều hành
Số kết nối đồng thời mặc định
Khả năng lưu trữ
Phù hợp với
Lập trình tương ứng
Mysql
Mã nguồn mở
Oracel mua lại
Miễn phí
LInux và Windows
500
Khoảng 2Tb - 16Tb
Những website phổ dụng
Thường dùng với Php
Sql Server
Mã nguồn đóng
Mirosoft
Tốn phí
Windows, sắp hổ trợ Linux
32,767
Khoảng 524,272 Tb
Hệ thống quản trị doanh nghiệp
Thường dùng trong .Net
Oracle
Mã nguồn đóng
Oracle
Chi phí cao
Linux và Windows
2047
Khoảng 128Tb
Hệ thống xử lý phức tạp
Thường dùng với Java
Về phần mềm quản lý và vận hành website trên máy chủ
Để một website chạy, cần phải có một phần mềm quản lý website, nhằm quản lý các kết nối từ máy khách đến máy chủ. Quản lý cho phép chạy nhiều website trên 1 máy tính. Quản lý tài nguyên cấp cho từng website. V.v.. Đây là vấn đề kỹ thuật chuyên sâu, nên nếu bạn có nhu cầu bình thường thì không cần quan tâm sâu về vấn đề này . Tuy nhiên mình sẽ giới thiệu sơ qua ,có một số webserver phổ biến là sau:
- Trên linux thì có : Apache (chiếm 60% các máy chủ web), Nginx, Lighttpd, LiteSpeed, Zeus,v.v..
- Trên Windows : Iis (chủ yếu do Microsoft phát hành), Lighttpd, v.v..
Tới đây chắc bạn đã có được cái nhìn khái quát về những công nghệ để xây dựng ra một website. Tùy vào nhu cầu của mình , hãy chọn lựa giải pháp công nghệ phù hợp để sau này khi có nhu cầu nâng cấp hoặc chuyển hướng sẽ không bị động và phụ thuộc vào nền tảng. Bài này tới đây đã dài quá, ở bài tiếp theo mình sẽ giới thiệu qua thực sự các doanh nghiệp sử dụng công nghệ nào để viết website cho bạn.