Catatan Teknis zhaoJian

Kursus TI Sistem Komputer dan Jaringan 008_Layanan Web dan Pengembangan Jarak Jauh

Pembelajaran / Sistem Komputer dan Jaringan ~6340 kata · 16 menit baca - dilihat

Lingkungan Server Web

Lingkungan web mengacu pada kombinasi perangkat keras dan perangkat lunak yang berjalan di server web untuk menghosting dan memproses aplikasi web. Biasanya mencakup sistem operasi, perangkat lunak server web, sistem basis data, bahasa pemrograman, dan alat-alat terkait lainnya.

Sistem Operasi:

  • Linux: Banyak lingkungan server web memilih Linux sebagai sistem operasi karena stabil, andal, dan sumber terbuka. Distribusi Linux umum mencakup Ubuntu, CentOS, Debian, dll.
  • Windows Server: Untuk beberapa lingkungan perusahaan tertentu, Windows Server juga merupakan pilihan umum.

Perangkat Lunak Server Web:

  • Apache: Sumber terbuka, banyak digunakan, mendukung banyak platform, cocok untuk berbagai aplikasi web.

  • Nginx: Ringan, performa tinggi, sangat cocok untuk menangani konten statis dan concurrency tinggi.

  • IIS (Microsoft Internet Information Services): Server web resmi di lingkungan Windows, mendukung ASP.NET dan teknologi Microsoft lainnya.

  • LiteSpeed: Performa tinggi, konsumsi sumber daya rendah, kompatibel dengan Apache, dapat berfungsi sebagai pengganti.

  • OpenResty: Platform web performa tinggi berbasis Nginx dan Lua, yang menggabungkan fungsionalitas inti Nginx dengan kemampuan pemrograman dinamis Lua untuk membangun aplikasi web dan situs web yang lebih kuat dan fleksibel.

  • Tomcat: Perangkat lunak server web sumber terbuka yang menyediakan dukungan untuk Java Servlet dan JSP. Ini bukan server web lengkap, tetapi perlu digunakan bersama dengan server web lain seperti Apache atau Nginx.

Sistem Basis Data:

  • MySQL: Sumber terbuka, ringan, cocok untuk sebagian besar aplikasi web.
  • PostgreSQL: Kuat, mendukung fitur lanjutan, cocok untuk kebutuhan data yang kompleks.
  • MongoDB: Basis data non-relasional, cocok untuk menangani data dalam jumlah besar yang mirip dengan dokumen.
  • Microsoft SQL Server: Sistem basis data relasional dari Microsoft.

Bahasa Pemrograman dan Framework:

  • PHP: Sering digunakan untuk membangun aplikasi web dinamis, digunakan dengan Apache dan Nginx, Laravel, thinkphp.
  • Python: Dengan framework seperti Django dan Flask, cocok untuk pengembangan web dan ilmu data.
  • Ruby: Dengan framework Ruby on Rails, cocok untuk pengembangan cepat.
  • JavaScript: Pengembangan frontend dan backend, React.js, Angular, Vue.js, Node.js.
  • C#: Bahasa berorientasi objek, tipe kuat, kompilasi, cocok untuk membangun aplikasi web tingkat perusahaan, ASP.NET.
  • Java: Bahasa tujuan umum, cocok untuk berbagai jenis aplikasi, termasuk aplikasi web, Spring.
  • Go: Bahasa tipe kuat statis, kompilasi, concurrent, cocok untuk membangun aplikasi web performa tinggi dan dapat diskalakan, Echo.

Containerisasi dan Virtualisasi:

  • Docker: Menyediakan solusi containerisasi, menyederhanakan deployment dan manajemen.
  • Kubernetes: Sistem orkestrasi container yang sangat dapat diskalakan, cocok untuk deployment container berskala besar.

HelloGitHub | Peringkat Server

LAMP/LNMP/WAMP/WNMP

StackSistem OperasiServer WebBasis DataBahasa Pemrograman Server
LAMPLinuxApacheMySQLPHP/Perl/Python
LNMPLinuxNginxMySQL/MariaDBPHP/Perl/Python
WAMPWindowsApacheMySQL/MariaDBPHP/Perl/Python
WNMPWindowsNginxMySQL/MariaDBPHP/Perl/Python

Pengembangan Jarak Jauh

Pengembangan jarak jauh berarti pengembang menulis dan men-debug kode di komputer lokal mereka, tetapi eksekusi dan pengujian kode aktual dilakukan di server jarak jauh atau lingkungan cloud. Metode pengembangan ini memberikan keuntungan seperti manajemen kode terpusat, sumber daya komputasi yang lebih kuat, dan lingkungan kerja yang lebih fleksibel.

  • Kontrol Versi Jarak Jauh (Remote Version Control): Git, SVN. Memungkinkan pengembang menulis kode secara lokal, tetapi kontrol versi dan kolaborasi kode dilakukan di repositori jarak jauh. Ini memfasilitasi kolaborasi tim dan manajemen kode yang aman.

  • Lingkungan Pengembangan Jarak Jauh (Remote Development Environment): Remote - SSH, Plugin Remote Development VS Code, dll., Pengembangan Jarak Jauh WebStorm. Memungkinkan pengembang menggunakan lingkungan pengembangan terintegrasi (IDE) secara lokal, tetapi eksekusi kode aktual dan debugging dilakukan di server jarak jauh. Ini membantu memastikan konsistensi antara lingkungan lokal dan jarak jauh, mengurangi masalah yang disebabkan oleh lingkungan yang berbeda.

  • Server Jarak Jauh (Remote Servers): SSH, FTP, SCP, dll. Pengembang dapat terhubung dari jarak jauh ke server, menjalankan perintah langsung di server, mengedit file, dll. Ini sangat berguna untuk proyek yang perlu dikembangkan dan diuji di lingkungan tertentu.

  • Debugging Jarak Jauh (Remote Debugging): Visual Studio Code, WebStorm, dll. menyediakan fungsi debugging jarak jauh. Memungkinkan pengembang men-debug kode di IDE lokal mereka, tetapi operasi debugging aktual dilakukan di server jarak jauh. Ini membantu mengatasi masalah yang terjadi di lingkungan yang berbeda.

  • Pengembangan Cloud (Cloud Development): AWS Cloud9, Microsoft Azure Dev Spaces, Google Cloud Shell, dll. Menyediakan lingkungan pengembangan berbasis cloud yang memungkinkan pengembang untuk mengembangkan, membangun, dan menguji di cloud. Ini mengurangi tekanan pada sumber daya komputasi lokal dan meningkatkan fleksibilitas.

  • Pengembangan Containerisasi (Containerized Development): Docker, Kubernetes, VM. Mengenkapsulasi aplikasi dan semua dependensinya dalam container yang dapat dengan mudah dipindahkan antara lingkungan pengembangan lokal dan server jarak jauh.


Tautan:

1Panel 宝塔 WDCP PHPStudy XAMPP OneinStack (Linux) UPUPW (Windows) phpEnv、PHPTS、LNMP……

Visual Studio Code

Plugin VS Code: Remote - SSH Remote Development

Peramban Web Google Chrome Peramban Web Google Chrome (Tiongkok)

Microsoft Edge

Bagikan:

Komentar