Web 2.0 Vietnam Logo


Tin nóng từ hội nghị các nhà phát triển Campfire One tối qua là sự kiện Google cho sử dụng hạ tầng của mình để host các ứng dụng web. “Google App Engine” (GAE) là một nền tảng hosting bao gồm web server Python, cơ sở dữ liệu BigTable and kho lưu trữ file GFS. Đây là những công nghệ chủ chốt của Google đang dùng để lưu trữ và truy cập dữ liệu cho các ứng dụng khổng lồ của công ty bao gồm cả search engine. Hôm nay bạn có thể dùng nó cho ứng dụng của mình!

google-app-engine.gif

Kevin Gibbs cho biết:

…Cũng giống như cách các blogger đã có được cách thức đơn giản để tạo nên một blog, chúng tôi đang làm cho việc xây dựng và triển khai một ứng dụng web dễ dàng hơn và bạn sẽ được miễn phí lúc khởi đầu…

Tôi là một trong những người đầu tiên dùng dịch vụ Elastic Cloud (EC2) của Amazon. EC2 cho phép bạn khởi tạo và chạy một hay nhiều các server (ảo) một cách hết sức dễ dàng. Cùng với dịch vụ lưu trữ S3 và cơ sở dữ liệu SimpleDB mới được đưa ra gần đây, các dịch vụ của Amazon (gọi chung là Amazon Web Services - AWS) hứa hẹn mở ra một kỷ nguyên mới cho việc hosting theo yêu cầu. Lý thuyết là vậy, nhưng để triển khai một hệ thống có khả năng đáp ứng các yêu cầu cao (high availability, load balancing) bạn cần phải có trình độ và hiểu biết khá cao về hệ thống. Đôi khi việc cấu hình và viết các ứng dụng theo dõi, tự động scale cho AWS lại mất nhiều thời gian hơn chính việc viết ứng dụng.

Ngược lai, GAE là một hệ thống tích hợp với đầy đủ “đồ chơi” cho một ứng dụng web hiện đại (do vậy ở mức độ nào đó kém linh hoạt hơn AWS). Bạn sẽ không bao giờ phải lo nghĩ tới việc scale cho ứng dụng của mình vì cái đó Google sẽ lo cho bạn. Hạ tầng của Google đủ tốt để chúng ta có thể tin cậy rằng ứng dụng sẽ có khả năng đáp ứng trước bất kỳ đột biến nào về traffic. Chúng ta cũng có thể tin rằng CSDL BigTable hoàn toàn không ngán ngại các bảng có nhiều triệu (hay thậm chí hàng tỷ) record, và thời gian đáp ứng của hệ thống file GFS chưa bao giờ bị phàn nàn là chậm.

Bạn sẽ luôn phải ngạc nhiên vì sự rộng rãi của Google khi biết rằng bạn sẽ được host ứng dụng của mình tại đây tới 500 MB lưu trữ và cho phép 10 GB băng thông lưu chuyển mỗi ngày hay tương đương 5 triệu pageview hàng tháng hoàn toàn miễn phí. Vượt qua mức này bạn sẽ phải trả phí nhưng Google chưa công bố bảng giá trong giai đọan thử nghiệm hiện nay. Tôi cho rằng phần lớn các ứng dụng web trong thời gian đầu sẽ khó vượt qua mức miễn phí này, trừ phi bạn cực kỳ thành công. Tóm lại, giờ đây bạn chỉ cần phải nghĩ ra và viết những ứng dụng tuyệt vời nhất rồi kêu gọi cả thế giới vào dùng. Một kiểu chơi rất… Google!

Tuy nhiên, mặt trái của việc xây dựng ứng dụng trên GAE là bạn sẽ phụ thuộc hoàn toàn vào các công nghệ của Google và rất khó có thể tách ra thành một ứng dụng độc lập. Yahoo hay Microsoft sẽ chẳng bao giờ mua một ứng dụng xây dựng trên nền tảng của đối thủ. Còn các nhà đầu tư cũng rất e ngại khi tài sản của công ty bạn đặt hết vào tay người khác, dù cho đó là Google.

Nhưng có thể bạn không cần nghĩ xa đến thế, khi ứng dụng của bạn thành công và có hàng triệu người dùng thì bạn luôn có hàng tá cơ hội biến nó thành vàng. Duy chỉ có các đối thủ và các công ty web hosting đang nhìn động thái mới của Google với ánh mắt thật sự âu lo.

Update: Tôi mới được activate tài khoản GAE. Chắc sẽ phải mất ít ngày học Python + Django ;) — hy vọng sẽ có thể chia sẻ kinh nghiệm về GAE với các bạn.


16 Comments to “Google App Engine – Hosting kiểu… Google”


  1. manhvt | April 9th, 2008 at 2:10 pm

    Chao` ban, Hom nay moi de y la ban da chuyen sang ten mien moi cua ban. Chuc weblog cua ban ngay cang dep hon, phong phuc hon. De thing thoang con chom baj` cua ban vo Blog cua to nha.
    http://manhvt.wordpress.com

  2. manhvt | April 9th, 2008 at 2:11 pm

    Weblog cua ban co top post Plug in, Ban co the chia se duoc khong?
    Thanks

  3. Hồng Quang | April 9th, 2008 at 3:00 pm

    @manhvt: well, you are truly evil (just a joke :) ).

    “Top Post” is a widget of “Popularity” Wordpress plugin, pls google for it.

  4. javacola | April 9th, 2008 at 9:51 pm

    Tại sao lại chỉ là Python, BigTable và GFS (Google File System) ?

    Một là có thể với việc cung cấp “hàng chùa” ngon lành thế này Google đang muốn phổ biến các công nghệ vốn được cho là bí mật của họ với đông đảo các developer, start-up,… dần dà hình thành xu thế công nghệ theo Google (như Sun và M$ đã làm)

    Hai là Google “âm mưu” cung cấp sân chơi để tìm kiếm start-up tốt hoặc engineer tốt cho chính họ. Đây là chiêu bỏ con săn sắt bắt con cá rô rất hữu hiệu.

    Hoặc cũng có thể Google cũng muốn dành phần trong miếng bánh béo bở mà Amazon EC2 đang nắm giữ.

    Một số link bổ sung giúp mọi người tham khảo (thiên về technique):
    http://highscalability.com/google-appengine-first-look
    http://code.google.com/appengine/docs/whatisgoogleappengine.html
    http://java.dzone.com/news/will-google-app-engine-ever-su

  5. Hồng Quang | April 9th, 2008 at 11:45 pm

    Mình nghĩ đây là một mũi tên nhắm vào nhiều đích:

    + Biểu dương sức mạnh công nghệ, làm giảm ảnh hưởng của Microsoft, Sun.

    + Gom các start-up về dưới trướng của mình (tất nhiên kg phải tất cả)

    + Tạo nên một trào lưu ứng dụng web mới — làm dễ như việc tạo 1 blog(?). Mình có chút liên tưởng tới các ứng dụng nhanh-và-rẻ của FaceBook.

    + Giành phần của mình trong trào lưu cloud computing (như AWS của Amazon).

    Đây chắc chắn là một bước đi rất chiến lược của Google.

  6. Baomoi.vn | April 10th, 2008 at 12:54 am

    Mọi người có vẻ excited với Google AppEngine nhỉ.

    Tôi thì lại có 1 cái nhìn khác.

    1. GAE hiện support mỗi Python (fav language của Google). Cộng đồng phát triển Python thì không phải là quá lớn, đặt giả thuyết nếu M$ mua Yahoo rồi tung ra 1 dịch vụ tương tự support .NET và PHP thì chắc sẽ hấp dẫn hơn nhiều cái gọi là BigTable và GFS khó hiểu kia.
    Ý tôi ở đây quan trọng là dịch vụ sẽ target vào cộng đồng phát triển nào (cách tiếp cận của AWS thì flexible hơn và pro hơn, gần như là có thể viết ứng dụng = hầu hết các ngôn ngữ web thông dụng).

    2. Đôi khi với người phát triển web app, một trong những cái thú vị nhất là xây dựng được nó từ đầu (bao gồm cả coding, tối ưu, phân tải…) GAE làm cho nhiệm vụ đó trở nên đơn giản hơn nhiều, công việc chỉ còn mỗi coding :D. Nghe thì rất nice nhưng thực ra câu hỏi được đặt ra là : Có bao nhiêu % web 2.0 startup có mơ ước trở thành 1 Google thứ 2 ? Và nếu bạn nằm trong số đó, liệu bạn có nên quá phụ thuộc vào Google thay vì tự setup lấy 1 nền tảng công nghệ riêng hoặc dựa vào 1 bên trung gian (Amazon chẳng hạn, vị trí của Amazon là rất tốt).

    Nói chung, tôi không hề có cái nhìn khắt khe với Google AppEngine (cá nhân tôi là crazy fan của Google). Tôi chỉ muốn nhìn bức tranh 1 cách khách quan nhất, và theo ý kiến chủ quan của mình tôi cho rằng cuộc chơi sẽ rất hấp dẫn nếu M$ với kinh nghiệm phát triển công cụ và ngôn ngữ lập trình của mình tham gia. Bản chất thì khi join vào GAE người ta vẫn chả hiểu thêm gì mấy về công nghệ nền tảng của Google (hiểu để làm gì cơ chứ ?). Túm lại là tôi có 1 cái SDK và 1 cái framework mới, tập làm quen với nó, phát triển app với nó và để Google lo những thứ còn lại.

    Tôi tin rằng từ giờ đến cuối năm sẽ chẳng có cái web startup nào nổi lên được từ GAE, đơn giản vì nó còn thiếu nhiều thứ. Nó chỉ đơn giản như là một thử nghiệm mới của Google, một công ty vốn đã có quá nhiều thử nghiệm.

  7. Hồng Quang | April 10th, 2008 at 8:45 am

    @Baomoi:

    1. Việc chỉ support Python đúng là một hạn chế lớn nhất hiện nay của GAE nhưng như phát biểu của Google thì GAE là “language neutral” nên mình sẽ kg ngac nhiên khi thấy PHP hay RoR dc support. Java cũng có thể dc support nhưng như một bài viết mà @javacola tham chiếu sẽ ít có khả năng hơn. .Net thì kg bao giờ rồi.

    2. Cũng vì làm việc trên AWS nên mình phải tìm hiểu rất nhiều vấn đề hệ thống và do đó học hỏi dc nhiều điều. Mình đồng ý rằng AWS sẽ vẫn có vị trí của mình, nhưng kg phải kg có nhiều người muốn đơn giản hóa vấn đề. Cái đơn giản thường thắng thế dù nó có thể kém flexible.

    3. Mình hoàn tòan đồng ý rằng dù hosting trên GAE cộng đồng pt cũng chẳng biết thêm bao nhiêu về các công nghệ của Google.

    4. Hiện nay GAE là chủ đề bàn tán “nóng” trên nhiều diễn đàn. Bài học mình nhận ra là dân cư mạng chẳng bao giờ thiếu ý tưởng, nên chắc chắn nhiều người đã manh nha các kế hoạch trên GAE rồi. Let’s see.

    Regards,

  8. Nova | April 10th, 2008 at 10:15 am

    Thanks all.
    Anh Quang xem thế nào mà newsletter không tài nào subscribe được.Chậm quá đi mất, em thử mấy lần rồi không được.

  9. ngondn | April 13th, 2008 at 8:25 pm

    Tôi hiện đang dùng GWT để vận hành một số sản phẩm của mình, thư viện này sử dụng rất tốt và cập nhật khá đều đặn, client thuần HTML còn server dùng Tomcat servlet. Nên tôi nghĩ rằng ngôn ngữ tiếp theo trên Google App Engine có lẽ sẽ là Java.

  10. Hồng Quang | April 15th, 2008 at 10:09 am

    @ngondn: Mặc dù GAE chưa support Java chúng ta vẫn có thể host ứng dụng viết bằng GWT. Xin xem thêm ở bài viết này:

    http://www.thescreencast.com/2008/04/using-java-gwt-with-google-app-engine.html

  11. Báo lá cải » Blog Archive » Google App Engine – Hosting kiểu… Google | June 8th, 2008 at 1:16 am

    [...] Nguồn Web 2.0 Vietnam [...]

  12. loi | August 6th, 2008 at 4:43 pm

    mình đã đăng ký google app tuy nhiên ở phần nhập mã số điện thoại thì gặp lỗi bạn có thể hướng dẫn mình cách nhập sao cho đúng không cảm ơn nhiều.

  13. Hồng Quang | August 6th, 2008 at 5:02 pm

    @loi: Cái SMS code này mới áp dụng. Theo danh sách các mạng ĐT thì không thấy cái nào ở VN.

    Cách duy nhất là nhờ ĐT của người thân ở nước ngoài?

  14. thanh phong | August 20th, 2008 at 8:16 am

    ban co the huong dan toi xac minh ten mien tren google apps, toi cam on rat nhieu

  15. Onlaa.com | August 23rd, 2008 at 10:48 am

    Các bạn ủng hộ gà nhà với nào: http://www.onlaa.com

  16. Onlaa.com | August 23rd, 2008 at 10:53 am

    Các bạn ủng hộ gà nhà với: http://www.onlaa.com

Leave a Comment