Nghiên cứu Nodejs dự án quảng cáo Bgate



Nghiên cứu Nodejs dự án quảng cáo Bgate

0 0


intro-bgate-master


On Github duyetdev / intro-bgate-master

Báo cáo thực tập tốt nghiệp

Nghiên cứu Nodejs dự án quảng cáo Bgate

Lê Văn Duyệt - 13520171

Phòng TN Hệ thống thông tin Tìm hiểu về Node.js Dự án BGate báo cáo sẽ gồm 3 phần, giới thiệu về phòng tn, công việc chính là tìm hiểu về công nghệ nodejs và các ứng dụng Nodejs : một công nghệ khá là hot hiện nay. Điểm mạnh của Node.js

Giới thiệu

Phòng TN Hệ thống thông tin

Phòng TN HTTT trực thuộc trường Đại học Công nghệ thông tin – Đại học Quốc gia TP. Hồ Chí Minh

Thành lập 02/2012

Với sứ mạng tăng cường năng lực đào tạo, nghiên cứu và chuyển giao công nghệ về Hệ thống thông tin phục vụ các mục tiêu phát triển kinh tế, xã hội của đất nước
Hướng nghiên cứu
  • Hệ thống thông tin tri thức.
  • Hệ thống thông tin di động.
  • Hệ thống thông tin hình ảnh và không gian.
Khi tham gia vào quá trình thực tập tại Phòng Thí nghiệm Hệ thống thông tin với , thực hiện nhiều nhiệm vụ được giao: Nghiên cứu các công nghệ của Javascript /Node.js, thực hiện các dự án ứng dụng công nghệ Node.js.
Nhiệm vụ
  • Nghiên cứu công nghệ Node.js và Socket.io.
  • Seminar giới thiệu về Node.js
  • Tìm hiểu về các hệ thống quảng cáo trực tuyến, Real-time Bidding (RTB).
  • Cài đặt dự án quảng cáo Ad Exchange (cho công ty BGate)
Cụ thể công việc mà em được giao như sau: ...
  • Nodejs + Seminar
  • Tìm hiểu về các hệ thống quảng cáo trực tuyến, Real-time Bidding (RTB), cách hoạt động của các Ad Exchange lớn trên TG (Double Click, Google Adsense ..., Ants của VN)
  • Cài đặt dự án quảng cáo Ad Exchange (cho công ty BGate)

Tìm hiểu

Node.js và các ứng dụng

Node.js

Google Chrome V8 Engine

Nguồn mở

Ứng dụng Web Real-time (Socket.io)

NodeJS là một mã nguồn được xây dựng dựa trên nền tảng Javascript V8 Engine Ban đầu được sử dụng để xây dựng các ứng dụng web. Đặc biệt là Web Single Page App và Realtime

Ưu điểm

  • Sử dụng duy nhất 1 ngôn ngữ Javascript
  • Module hóa.
    var fs = require('fs')
  • Lập trình sự kiện, bất đồng bộ
Có khá nhiều ưu điểm:
  • Sử dụng 1 ngôn ngữ cho client và server.

Tìm hiểu và cài đặt

Dự án BGATE

Quảng cáo trực tuyến

Trong quá trình tìm hiểu Node.js, PTN thí nghiệm có nhận được 1 đơn đặt hàng từ phía Cty BDA (là 1 công ty về truyền thông) Muốn xây dựng 1 hệ thống quảng cáo

Quảng cáo trực tuyến

  • Quảng cáo thuần
  • Quảng cáo tìm kiếm

Quảng cáo trực tuyến

  • Quảng cáo thuần
  • Quảng cáo tìm kiếm
  • Quảng cáo hiển thị

Quảng cáo trực tuyến

  • Quảng cáo thuần
  • Quảng cáo tìm kiếm
  • Quảng cáo hiển thị
  • .....
Và còn nhiều loại quảng cáo khác. Dự án BGate là loại quảng cáo mạng hiển thị. (bấm next) ==> Mục tiêu: xây dựng hệ thống kế nối giữa người mua và bán quảng cáo. Và hệ thống đấu giá quảng cáo thông qua phương thức RTB

BGATE

==> Mục tiêu: xây dựng hệ thống kế nối giữa người mua và bán quảng cáo. Hệ thống này được gọi là Ad Exchange (next) Và hệ thống đấu giá quảng cáo thông qua phương thức RTB

Hệ thống Ad Exchange

ANTS Ad Exchange là một nền tảng quảng cáo thời gian thực cung cấp cho các nhà quảng cáo một công cụ đơn giản, dễ sử dụng và đủ mạnh mẽ để đem lại thành công cho chiến dịch.

BGATE

1. BGate Dashboard

2. BGate RTB

Về cơ bản, BGate ở giai đoạn 1 chỉ yêu cầu xây dựng thành công 1 kênh giúp người mua/bán QC kết nối lại được với nhau. .... 2 phần chính của BGate là Dashboard và RTB.
  • Dashboard: làm băng PHP, có tham khảo 1 số dự án nguồn mở
  • RTB: làm bằng Node.js + MongoDB (Redis).
2 module này được đồng bộ dữ liệu với nhau.

Dashboard

BGate dashboard đơn giản cho Publisher và Advertiser đăng ký. Publicsher là người có trang web ... Advertiser mong muốn đc đặt quảng cáo ...

BGate RTB

Dữ liệu đc kết nối đến CSDL của Dashboard -> lưu trên bộ nhớ server. Khó khăn: mỗi bid phải đc xử lý trong 100ms. (next) Do yêu cầu kết nối đến các Ad Exchange khác.

< 100ms

Tối ưu hóa code Xử lý hết trên RAM Viết lại các thư viện trên C++ Và việc đấu giá diễn ra ngay tức khắc.
Và kết quả đấu giá thắng sẽ được render hiển thị. Khi người dùng nhìn thấy banner sẽ đc tính 1 impression. Click tính tiền Mốt số thuật toán cơ bản chống gian lận.

Kết luận

  • Kỹ năng nghiên cứu, tìm hiểu
  • Làm việc nhóm + độc lập
  • Kỹ năng trình bày vấn đề

Và cuối cùng em xin kết luận trong quá trình thực tập. Làm nhóm (Trello + Excel) Trình bày vấn đề: Team + Khách hang

THANK YOU

Một lần nữa em xin cám ơn các anh chị, cám ơn thầy Hùng đã tận tình giúp đỡ các bạn. Không chỉ trong dự án này, mà còn nhiều việc khác. Bản thân mong muốn start up ....
1
Báo cáo thực tập tốt nghiệp Nghiên cứu Nodejs dự án quảng cáo Bgate Lê Văn Duyệt - 13520171