Popular Post

Popular Posts

Posted by : Unknown Saturday, March 12, 2016

Bulan Juni 2015 lalu, Facebook telah meluncurkan aplikasi Facebook Lite, versi Facebook for Android yang lebih ringan dan dibuat untuk negara berkembang. Saat ini, perkembangan aplikasi ini cukup menggembirakan karena telah digunakan oleh 100 juta pengguna aktif bulanan dalam waktu kurang dari sembilan bulan.
Aplikasi ini memiliki ukuran kurang dari 1 MB, yang berarti orang dapat mengunduh aplikasi tersebut dalam waktu beberapa detik meskipun dalam jaringan yang lambat. Aplikasi ini kini mendukung 56 bahasa dan populer di negara seperti Brazil, India, Indonesia, Mexico dan Filipina.
Mengapa Facebook Lite
Facebook merasa bahwa pengalaman yang menyenangkan bagi pengguna saat menggunakan Facebook Lite adalah hal yang terpenting, tanpa mereka harus diributkan dengan perangkat yang mereka gunakan atau jaringan yang mereka miliki. Karena berbagai kondisi jaringan dan tipe perangkat, dapat memberikan pengalaman yang berbeda.
Lebih dari setengah populasi dunia, setidaknya 1,6 miliar orang, masih hidup di daerah di mana jaringan broadband (3G dan 4G) masih belum tersedia, sehingga membuat akses data menjadi sulit. Bahkan untuk pengguna dengan jaringan 3G, kurang stabilnya koneksi seringkali menjadi penghalang terbesar untuk menciptakan pengalaman ber-Facebook mobile. 
Penelitian Facebook terhadap negara berkembang menunjukkan bahwa harga dari paket data dan keseluruhan data yang digunakan menjadi hal yang sangat penting bagi pengguna. Karena itu, Facebook berusaha untuk mengurangi penggunaan data bagi pengguna di Negara berkembang ketika mereka ingin mengakses Facebook. Salah satunya dengan mengoptimalkan performa aplikasi Facebook for Android pada jaringan 2G. KArena itulah, Facebook memperkenalkan Facebook Lite di tahun 2015 yang ditujukan untuk mengatasi segala rintangan tersebut. 
Target Facebook saat membuat FAcebook Lite
  1. Ukuran APK di bawah 1MB
  2. Merancang interaksi client-server untuk mengurangi penggunaan data dan dapat bekerja dengan baik di jaringan 2G.
  3. Membuat aplikasi yang dapat berjalan di sistem Gingerbread dan perangkat ponsel tahun 2009.
Sedikit mengenai Arsitektur
lite-scener
Dengan rintangan-rintangan yang disebutkan di atas, Facebook memilih arsitektur proxy server yang sangat tipis yaitu arsitektur Facebook for Every Phone yang sudah terkenal dengan kesuksesannya sebagai langkah awal dan mengadaptasinya untuk Android.

Untuk mencapai besaran APK yang ditargetkan, Lite APK tidak memiliki kode produk dan sumber yang biasa ditemukan di aplikasi Android lainnya. Client Lite adalah VM sederhana yang memberikan berbagai kemampuan untuk berinteraksi dengan OS (seperti membaca file, membuka kamera, membuat database SQLite dan lainnya) dan engine rendering yang menentukan berjalannya Android UI. Product codedibuat pada server dan diekspresikan dalam bentuk kemampuan yang dimiliki client. Sumber daya dikirim dari server sesuai kebutuhan dan disimpan dalam cache. Dengan demikian, ini memiliki kemampuan skalabilitas untuk membuat tanpa membuat ukuran APK terlalu besar.
Arsitektur Lite dibuat untuk memastikan bahwa pekerjaan berat dilakukan pada server, yang memungkinkan aplikasi dapat berjalan dengan baik di perangkat yang lambat seperti LG Optimus ME. Server menarik data dari layanan backend Facebook dan mengirimkannya ke layar pengguna dalam bentuk UI tree ter-compressed yang serupa dengan DOM, dimana client kemudian me-render-nya. Seiring dengan client yang berbicara langsung ke satu server dalam sebuah satu sesi, server dapat mendorong data ke client sebagai tambahan atas client yang meminta data.
Lite tidak menggunakan HTTPS, melainkan Lite menggunakan pesan protokol biasa pada TLS (langsung dari TCP) . Pertukaran pesan ter-compressed terjadi di atas koneksi TLS yang terus menerus yang client buat pada server salaam durasi sesi terkait. Rancangan seperti ini membuka kesempatan untuk banyak optimalisasi yang membantu untuk mengurangi pemakaian data sehingga memungkan aplikasi ini bekerja pada jaringan 2G.
Lite memiliki seperangkat image server yang berhubungan dengan CDN dan penyimpanan foto lainnya untuk memungkinkan server Lite menyajikan foto dengan ukuran yang tepat untuk pengguna.
Ukuran APK yang Kecil
Mengunduh aplikasi biasa dengan ukuran aplikasi sebesar 20MB APK dapat memakan waktu selama 30 menit dalam jaringan 2G dan karena jaringan kebanyakan unduhan akan gagal sebelum selesai mengunduh. Dengan membatasi ukuran APK dapat mempermudah orang dalam mengunduh aplikasinya. Hal ini juga berarti bahwa orang menggunakan data yang lebih sedikit untuk meningkatkan aplikasi. Atas dasar hal tersebut, FAcebook mengambil keputusan untuk meminimalisir ukuran APKnya.
Seperti yang telah dikatakan sebelumnya, aplikasi ini dirancangagar client hanya berupa VM generic dan product code dibuat pada server. Elemen yang cenderung menambah beban APK, seperti terjemahan dan sumber PNG, dikirimkan dari server berdasarkan permintaan dan disimpan dalam cache daripada dibuat di dalam APK. Di berbagai tempat, untuk menyimpan data dan ukuran, FAcebook menggunakan simbol Unicode daripada sumber imej untuk mewakili icons.
Optimasi untuk koneksi yang lambat dan efisiensi data
Jaringan Lite banyak yang di-optimal-kan untuk dapat bekerja pada jaringan 2G dan dapat mengurangi penggunaan data. Untuk mencapai wire protocol yang efisien secara ektrem untuk ukuran byte, daripada menggunakan HTTPS, Lite menggunakan protokol pesan biasa pada TLS (langsung dari TCP). Salah satu rintangan terbesar dalam jaringan 2G adalah bahwa koneksi bisa sangat lambat, dapat memakan waktu beberapa detik. Kebanyakan trafik Lite berjalan pada koneksi single ke backend, rintangan inilah yang dapat dikurangi sebagai perbandingan.
Mengambil keuntungan dari fakta bahwa pengguna berkomunikasi berulangkali pada server yang sama, kamus yang sudah dikompres dibagikan secara dinamis untuk diaplikasikan pada pesan dalam satu sesi. Facebook menggunakan kompresi LZMA2 untuk server bagi pesan pengguna karena rasio kompresi yang besar dan juga rendahnya pengunaan sumber pada proses pengurangan.
Kami menggunakan DEFLATE untuk server pesan pengguna.
Perangkat seperti Augmented Traffic Control dan Internet.org Innovation Lab telah membantu para insinyur Facebook untuk melakukan simulasi jaringan 2G saat percobaan di kondisi yang realistis.
Kebanyakan penggunaan data untuk sebuah aplikasi berasal dari foto, sehingga ini adalah area di mana Facebook berupaya mengurangi pemakaian data pada aplikasi. Facebook mengatur ukuran dari foto-foto untuk dapat diatur seberapa banyak data yang digunakan. Server Lite mengetahui dengan pasti ukuran lebar, tinggi layar dan kepadatan layar dari client. Daripada berkomunikasi secara langsung dengan CDN, client Lite menerima ukuran foto yang pasti dari koneksi TCP yang sama pada server Lite.
Server dapat menyesuaikan kualitas JPEG dari imej beriku formatnya sesuai dengan ukuran yang dibutuhkan, daripada menggunakan beberapa ukuran yang di-supportCDN. Ukuran yang pasti dan optimasi kualitas JPEG membuat banyak imej menjadi lebih kecil; karena ukuran imej yang besar, akan sulit untuk di-transport. Server imej Lite juga menyediakan penyimpanan cachedan transcoding imej.
Faktanya bahwa client berinteraksi dengan salah satu server untuk memungkinkan server bisa mengantisipasi dan mendorong data pada situasi tertentu. Lite memiliki mekanisme pembeda, sehingga layar yang telah diterima client dan memiliki sedikit perubahan hanya perlu dikirimkan pembedanya saja di atas layar yang sudah ada daripada dikirimkan seluruh layar, sehingga bisa menghemat data. Contohnya, ketika laman News Feed diperbarui dan perubahan hanya terjadi pada jumlah like untuk beberapa postingan, hanya perbedaan itu saja yang ditampilkan ke pengguna. Sebagai alternatif, jika ada komentar baru untuk sebuah postingan, server dapat memperbarui clientdengan komentar baru melalui mekanisme pembeda ini meskipun tanpa request data dari client.
Bekerja untuk setiap perangkat Android pada pasar berkembang
Facebook menetapkan target aplikasinya untuk bekerja dengan baik meski menggunakan perangkat berkinerja lambat yang masih banyak ditemukan di negara berkembang. Perangkat ponsel tahun 2009 seperti Samsung Galaxy Y hadir dengan spesifikasi yang terbatas seperti 290 MB RAM, 600 MHz prosesor, dan 180 MB memori internal. Data Facebook juga menunjukkan bahwa dukungan untuk Gingerbread juga sangat penting. Arsitektur pengguna meminimalisir penggunaan CPU, penyimpanan, dan RAM. Kegiatan yang sangat mengandalan sumber daya, seperti tampilan layar, dilakukan oleh server Lite; sementara animasi dan interaksi UI lain yang berat sengaja dihindari. Ukuran cache untuk imej dan berbagai sumber lainnya dipilih untuk tetap berada dalam puluhan MB. Arsitektur klien melakukan pengukuran untuk tetap menjaga penggunaan memori yang sedikit dan membebaskan memori saat berada di balik layar.
Pilihan desain ini membantu Facebook Lite meraih metrik kinerja terbaik dalam hal interaksi seperti login, waktu mulai, memperbarui tampilan laman, dan waktu untuk menunggu loading foto pada jaringan bandwidth yang lambat.
Dengan Facebook Lite, tujuan Facebook adalah memberikan pengalaman yang sebaik mungkin bagi setiap pengguna, tanpa dipengaruhi tipe perangkat maupun koneksi mereka. Facebook juga berharap dapat berbagi berbagi cara bagaimana proses mereka membuat aplikasi ini, sehingga dapat mendorong lebih banyak orang untuk membuat aplikasi bagi 1 miliar yang akan terhubung dengan internet.

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Nicolas Christian Tambunan - Devil Survivor 2 - Powered by Nicolas Inc. - Designed by Nicolas Tambunan -