Arsip: Kasus: Remote Database, perlukah?

more 16 years ago
LuriDarmawan
Baca dulu:
http://pascal-id.org/thread/unknown/2062/view-old-thread/
Bedah Kasus Delphi pertama ini,
diluncurkan berkaitan dengan munculnya beberapa thread di delphi-id.org yang menanyakan koneksi database, baik remote maupun lokal.
Secara pribadi, saya merasa kadang ada yang tidak sesuai dengan hati nurani.
Nahh... akhirnya muncullah post Bedah Kasus Pertama ini.
Agen Penjualan Barang Ilegal Region Asia
K. Jasa Keuangan K
-- bertugas sebagai debt-collector,
-- melakukan update terhadap setiap pembayaran nasabah/konsumen
-- spek IT: Linux, Apache/Tomcat, Postgressql, IP-Public: 1.0.0.111
P. Kantor Pusat P
-- pusat data karyawan seluruh Region Asia
-- Spek IT: Windows, IIS, MsSQL, IP-Public: 9.0.0.1
C. Kantor Cabang C
-- pusat data nasabah/konsume di Area C
-- Spek IT: Linux, Apache, MySQL, IP-Public: 90.0.1.10
A. Anda, di bagian Keuangan Kantor Cabang C
-- Monitoring Status Pembayaran Setiap Nasabah
-- Spek IT: Windows + Delphi + komponen2 + kopi + teh + mie instan
-- IP: dynamic karena ada DHCP
PETUNJUK:
setiap aplikasi di semua node memiliki satu field kunci, anggap field idCustomer.
Akses langsung kedatabase harus melalui persetujuan administrator masing-masing node.
CATATAN:
Abaikan dahulu soal network, anggap semua titik terhubung dengan baik dan benar, jauh dari jalan sesat.
Tetapi pembahasan soal network tetap diperkenankan.
Senjata yang anda diberikan kepada anda:
[x] laptop kelas berat, spek amat sangat mumpuni,
--- plus modem selular, wifi, gadget plus-plus
--- karena kelas berat, kalo dimasukkan ke ransel, beratnya sekitar 10Kg
[x] Bahasa Pemrograman,
--- mau Delphi mau Delhi mau DeliDeli ga masalah pake bahasa apapun
--- tetepi karena ini forum Delphi, maka anda wajib berbahasa Delphi
--- bahasa penunjang lain, amat sangat diperbolehkan
--- Tool yang diberikan adalah berlisensi,
--- dengan nomor seri: 111.11akusayangibu22akusayangibu
Senjata Khusus:
[x] Level Komando
--- Anda diperbolehkan melakukan request IT kepada masing-masing bagian IT ke setiap node
--- Anggap saja perintah anda merupakan perintah yang wajib dilakukan oleh setiap node.
Senjata yang harus anda cari di medan perang:
[x] Ramuan Ajaib Kemampuan Analisa
TUGAS:
Anda sebagai A di Bagian Keuangan Kantor Cabang C,
bertugas membuat aplikasi untuk melakukan monitoring pembayaran setiap nasabah/konsumen terhadap barang yang dibeli,
barang boleh dianggap sebagai apa saja, dari motor sampai narkoba.
Karyawan dari Kantor Cabang C juga ada yang melakukan pembelian, sehingga bisa dianggap sebagai nasabah juga, dan memang datanya ada di dalam data nasabah.
(biasanya sih bayarnya sering telat2 .. xixiixixixi )
Paparkan kemampuan penyelidikan anda untuk memecahkan kasus ini,
apa yang mesti anda kerjakan dan lakukan!
btw...
karena masing-masing node mengguakan spesifikasi IT yang amat sangat berbeda,
apakah anda sebagai pemrogram delphi MESTI melakukan koneksi remote database terhadap masing-2 node?


more 16 years ago
LuriDarmawan
JAWABAN SAYA:
Biar pada enak jawabnya,
saya sampaikan dahulu jawaban intro saya yaa...
Biar imbang, yang memberikan pertanyaan harus bisa menjawab.
Karena maju ke medan perang mesti sigap dan gesit,
barang bawaan saya kurangi saja,
laptop cukup seadanya yg penting tool-tools kecil bisa dijalankan.
gprs/cdma-modem adalah alat spionase yang wajib sy bawa, gadget dikasihkan ke teman ajah.
tools yang HARUS saya angkut: Delphi, Komponen delphi untuk httpget, PHP, web-browser, DongKRAK terbaru
tools yang BISA saya tinggal: Segala aplikasi untuk remote database, semacam mysqlfront, sql-manager, dll
Dilihat dari konfigurasi dari gambar yang ada:
Terlihat ada suatu kesamaa, yang mana coba?
Sama sekali tidak diperlukan untuk melakukan akses-remote-database secara langsung.
Saya cukup meminta masing-masing IT di masing-masing node untuk membuatkan webservice.
Spesifikasi webservice dipersilahkan kepada masing-masing node,
output boleh flat-text, html, atau xml
bahasa boleh dari bahasa apa saja, yang penting outputnya.
Perintah/parameter webservice boleh dirumuskan oleh masing-masing node,
perintah/parameter bisa juga saya request-kan kepada mereka
catatan:
DongKRAK adalah tools webserver asli kemasan kioss, ref: http://kioss.com/kioss

more 16 years ago
kaka-delphi
Karena di peraturan boleh MEMAKI-MEMAKI, jadi pembukaan saya pake MAKI :lol:
sMaki:= '&& & (S&A&& )&!~& BYDGhubDA&^& ()&$(%& ($%^&%%AHSHSGA^&SA&^GF^';
WEkekekekkkkk .... :D
Wokeh .... sama juga, karena maju ke medan perang, jadi gw juga musti siap dengan perlengkapan dan perbekalan.
Perlengkapan yang gw bawa :
- Leptop yang ringan tapi berjuta aksi ... :lol:
- GPRS/CDMA modem (wajib buat koneksi, walaupun di luar angkasa ... hehehehehe .... )
- Delphi7
- Indy9 (IdHTTP)
- PHP
- ASP
- CMD (command line, buat ngeping)
- HELP (Delphi, PHP, ASP, MySQL, PgSQL, MSSQL
- Sersan Guugle
Perbekalan :
- Kopi
- Rokok
- Cemilan
- Aspirin
-
Perlengkapan yang musti di tinggal :
- EMS (walau sayang tool ini sangat membantu untuk Tunneling) :(
- Spiker Altec Lansing 7.1 (kagak bisa suronding nich ... :( )
- Tank Hover (bikin ribet aja)
- Nuklir (takut kena radiasi)
-
Di masing - masing target terdapat servis HTTP yang dapat di request melalui perantara skripting side-nya masing - masing.
Strategi Penyerangan ke target sbb :
- Koneksi ke Dunia Mayapada pake Modem GPRS / CDMA
- Pake senjata Ultra Sonic "CMD" untuk mengetahui status target serta berapa jauh target berada
- Manfaatkan Servis HTTP
- Buat Skripting side di target
- Request ke target sama si mata-mata Indy9 yaitu si IdHTTP
- Ambil hasil Posting (data hasil posting berupa CSV) simpan dulu ke Pos StringList supaya lebih aman.
- Laporkan ke StringGrid dari Pos StringList
- Misi selesai ...
Ach .... sruput dulu kopi ....srrrrruuuuuuppppppuuuut, siapkan bahan bakar
Karena waktu menunjukan 06.45 jadi saya harus buru2 ke tempat gawean ...... dilanjut nanti OKe ....................
kabuuuuuuuuuuuuuuuuuurrrrrrrrrrr ...................... Lariiiiiiiiiiiiiiiiiiiiiiiiii ....... Kesiangaaaaaaaaaaaaaaaaaaaaannnnnnnnnnn ......
more 16 years ago
simba
A. Quick and dirty solution:
Asumsi batasan (krn belum dijelaskan):
1. Batas waktu: tugas ini harus udah dikumpulkan besok, paling telat besok lusa pagi.
2. Batas aplikasi: hanya membuat aplikasi monitoring saja, bukan reporting apalagi analisa.
3. Batas SDM: saya develop aplikasi sendirian (tanpa tim).
4. Batas hak akses di server agen lain: tidak punya akses, soalnya adminnya beda dan saya gak bekerja di agen tsb.
Bekal yg dibutuhkan:
1. Cukup laptop standar saja, kalo gak ada, pake PC juga gak masalah, yg penting mampu jalankan Delphi 7 standar (tanpa komponen aneh2). Itu pun disediakan kantor. Kalo kantor gak punya Delphi 7 licensed, aku pake Lazarus, sama aja. Soalnya aplikasi yg akan dibangun relatif sederhana dan mudah. Gak perlu bawa2 HP baik GPRS/CDMA krn koneksi internet dan intranet disediakan kantor (saya kan karyawannya!), termasuk fasilitas telepon. :D
2. Komponen Zeos, untuk bisa konek ke berbagai db yg berbeda. Kalo Zeos gak ada, pake ODBC juga no problem.
Yg saya lakukan:
1. Hubungi db admin di setiap agen (K, P, dan C) dan minta dibuatkan user untuk login ke db masing2, cukup read only saja krn aplikasi sifatnya hanya monitoring sehingga tidak perlu melakukan modifikasi data.
2. Agar lebih cepat development-nya, lebih ringan beban jaringannya, dan gak merepotkan org lain (di masing2 agen), aplikasi bersifat search-based. Pengguna cukup memasukkan ID nasabah/karyawan, aplikasi akan melakukan 1 query ke masing2 DB hanya untuk 1 ID tsb, kemudian tampilkan hasil query. Selesai.
Estimasi waktu penyelesaian:
1. Kontak db admin, create user, set privillege user, menerima username dan password untuk masing2 db: 30 menit. Asumsi semua db admin available dan langsung membantu, urusan birokrasi organisasi diabaikan.
2. Develop aplikasi monitoring: 1 jam. Ini udah termasuk coder testing dan debugging.
3. Testing ke user (1-3 org aja): 30 menit. Tester minta bantuan temen2 sekantor.
4. Finishing aplikasi berdasarkan masukan dari testing user: 30 menit.
Total waktu dibutuhkan: 2.5 jam saja, yah maksimal 3 jam termasuk nyruput kopi dan nyalain rokok. Sisa waktu bisa buat ngegame PangYa atau DotA. :D
B. Solusi ideal:
Males nulis dan ngebahas, soalnya panjang dan susah. Butuh koordinasi lintas agen, butuh tim pendukung, butuh tambahan hardware, dlsb, ntar aja dibahasnya, kalo sempet. :P
Tanggapan thd solusi Luri dan kaka-Delphi:
Mungkin niatnya bagus, tapi secara praktis akan lebih sulit dan butuh lebih banyak waktu dan SDM. Kalo misalnya IT di agen lain keberatan untuk develop web service, atau lebih parah gak mampu, kan jadi repot. Belum kita nyusun kesepakatan dalam komunikasinya, mungkin bisa bebas dalam format data (csv/html/xml), tapi gak mungkin bebas dalam format komunikasi (request command, reply data structure, dlsb). Belum testingnya, budget-nya, dlsb. Ribet dan ribut lah pokoknya. Bisa2 butuh waktu 1 bulan tuh hanya untuk nyelesaikan aplikasi monitoring. Dgn solusiku, mungkin gak ideal secara teknis, tapi secara praktis lebih mudah, lebih cepat, dan gak ngerepoti org lain. Kalo mau ngasih contoh kasus dan solusi web service, kayaknya contoh ini kurang tepat, setidaknya batasan2-nya kurang jelas. :D

more 16 years ago
masdi2t
Sebelum menjawab atau bahkan tidak usah jawab wong dah dijawab mas Luri saya mau komentar.
Kalau dalam contoh kasus disini itu adalah satu perusahaan, orang2 IT nya bodo bgt ya, dah tau mau ada integrasi pake engine db yang beda2. Kok kurang kerjaan banget ya. Atau jgn2 contoh kasusnya yg terlalu dibuat2 :)) peace.
tools yang diperlukan jelas delphi, php, apache, dan GTFW (gamatechno framework, yaitu sebuah framework yg dibangun untuk PHP dan menggunakan arsitektur SOA, service oriented architecture).
delphi disini dipakai untuk membuat sebuah web browser mini (klu bisa malah ambil aja punya demo nya borland :D). kemudian semua operasi menggunakan web-service, baik untuk monitoring, updating, atau yg lainnya.
selesai :)

more 16 years ago
kaka-delphi
@simba :
Solusi yang cepat serta solusi yang paling standar sekali, bukannya menyatakan bahwa solusi seperti itu sangatlah tidak efisien, justru cara seperti itu adalah solusi tepat.
Tetapi lain halnya apabila akses DB tidak di ijinkan dari luar localhost,jelas dengan menggunakan zeos pun tidak akan mempan.
Solusnya adalah dengan menumpang ke servis HTTP, dengan perantara skriping sidenya.
Sekilas agak ribet, tetapi itu akan membuahkan hasil yang lumayan. Saya yang skill levelnya di bawah suhu simba juga bisa menyelesaikan kasus tersebut kurang dari 3 jam, apalagi dikau .... :D Dengan membuka sedikit Manual PHP, (testing di localhost dulu) langsung bisa ... ;)
@masdi2t
Kasus seperti ini emang cuman kasus omong doang belaka, karena betul menurut anda "kurang kerjaan banget", jadi ga usah anggap sebagai kejadian nyata yang ada di dunia sebenernya, ini hanyalah kasus yang sering jadi pertanyaan di Forum ini. Jadi anggaplah serius ... lho ... :D

more 16 years ago
Manz
Gue ... ikutan ...
[MODE BLACKY HACKY = ON] :twisted:
[MODE BLACKY SNIFFY = ON] :twisted:
[MODE BLACKY SUDO = ON] :twisted:
Tools ... yang penting laptop yang heded ... kudu kuat melakukan penyerangan ... tapi senjata dikit ajah.
Minta admin jalanin web-service di kota P dan K, dengan pake sedikit (karena pake Linux Makliva) gue keluarin perintah SU ke pinguin gue... kalo dikasih ama admin.... kalo enggak :
[MODE BLACKY SUDO ADVANCE STRENGTH = ON] :twisted:
Buat mie instan dulu tinggal seduh pake aer panas, tutup tiga menit.
Jalanin sekrip pake pehape yang memerintahkan ke pinguin gue untuk ngejalanin monitoring data yang masuk, atawa yang keluar dengan perintah SU.
Embat, tata-kota dari kantor P dan K. lakukan perintah query ke pinguin Makliva keluarin dari web-service nya ...
Pake web-service bisa ngejalanin on-demand-query ... gak perlu repot.
Setelah 3 menit nutup mie instan, buka tutup nya dan tinggal makan hasil dari web-service yang berupa monitoring dari pinguin Makliva ....
Gak perlu repoooooottttt........ dhhhuuuarrrrr ... gue tembak langsung benteng database yang ada di kota P dan K...
:evil: :evil: :evil: berubah :mrgreen: :mrgreen: :mrgreen:

more 16 years ago
kaka-delphi
@manz_delphi
Jika anda mengakses seperti itu, berarti anda tidak membutuhkan tools delphi dunk .... :P
Kalau gitu, kita cukup menggunakan tools secure shell seperti putty dan hanya membutuhkan skill comand linenya.
Wah ... kurang asyik dunk jika kita tinggalkan tools kesayangan kita .... :D
Ga seru ..... :P

more 16 years ago
Manz
huahahahahahhahahaha...
[x] Bahasa Pemrograman, --- mau Delphi mau Delhi mau DeliDeli ga masalah pake bahasa apapun --- tetepi karena ini forum Delphi, maka anda wajib berbahasa Delphi --- bahasa penunjang lain, amat sangat diperbolehkanNah.... untuk @kaka-delphi aku pake item yang ke-3 ... hueheheheheheh :mrgreen:

more 16 years ago
kaka-delphi
Yuhuuuuu .....
Karena opsi nomor 3 adalah penunjang .... jadi yang wajib tetep pake bahasa Delphi .....
Wakakakakakakakkak ..... :lol: .... mampus lho .....
more ...
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 3 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 3 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 11 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 11 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 11 years ago
Random Topic
- Lama Gak Berkunjung Delphindo Mkin asik
by Mr-Soft in Kritik & Saran more 17 years ago - Laporan yg bisa di Edit2 (fastreport)?
by archvile in Reporting more 15 years ago - tanya skin bro
by putra in Enginering more 18 years ago - Stored Procedure + Parameters
by zones in Tip n Trik Pemrograman more 15 years ago - Tutorial Delphi ke MySQL dengan ADO
by amalia79 in MySQL more 16 years ago - Tugas Akhir AVR
by putra in Hal umum tentang Pascal Indonesia more 18 years ago - gmn ya kalo mau ambil karakter tertentu di edit text?
by Quzy in Tip n Trik Pemrograman more 16 years ago - Menampilkan data currency pada ListView
by percyl in Hal umum tentang Pascal Indonesia more 14 years ago - Append / Edit Table via Jaringan
by Thunder in Tip n Trik Pemrograman more 14 years ago - tentang installshield
by goodday in Tip n Trik Pemrograman more 17 years ago