Tanggal Sebelumnya Tanggal Berikutnya Ulir Sebelumnya Ulir Berikutnya
Indeks - Tanggal Indeks - Ulir Diskusi
| From | "Heru Sunandar" <heru @ somewhere.in.the.world> |
| Date | Wed, 23 May 2001 07:31:31 +0700 |
Sebagai alternatif utk refreshing otomatis, teman saya dulu pake javascript
biasa.
supaya nggak semua dibikin beberapa layer. nah javascript ini ditempatkan
di layer ini. Gue nggak tahu detailnya, sebab gue jarang memprogram dari
sisi client.
Untuk sisi servernya mengenai caching otomatis mungkin gue bisa share
pengalaman.
Penggunaan persistence object sebagai caching memang bisa meningkatkan
kecepatan. Hanya masalah life cyclenya pada app servernya. Saya pernah coba
di
project Aceh, ketika development nggak ada masalah. Tapi ketika production
sering tewas nggak jelas. Mungkin karena hitnya yang gede. Lebih bagus pake
Stateless Session Ejb. Dengan ini kita mendapatkan extra Scalability,Life
Cycle management,
pooling resource plus extra bonus Transaction management. Selain itu sekali
bikin bisa dipake untuk
Web Server(http) dan Aplikasi biasa(via RMI-IIOP) jadi ada penghematan
resource.
conto simplenya :
public class CacheClass implements SessionBean {
public String someValue;
public void ejbCreate()
{
//select someValue from table
// this.someValue = someValue from table
}
public void setSomeValue(String someValue){
// update someValue and field that represent someValue in table
}
public String getSomeValue(){
return this.someValue;
}
}
Nah kita bikin rule bahwa someValue di table hanya boleh diakses dengan
method setSomeValue.
Sedangkan bila kita butuh data di table cukup panggil getValue(). Ini
dimungkinkan karena dalam
StatelessBean, field dan method ejbCreate() di sharing rame-rame. Bila ingin
Transaction lebih strict
gunakan EntityBean. Penggunaan Transaction Isolation lebih mudah
dilaksanakan. Hanya untuk mengambil nilainya
jangan langsung manggil method getSomeValue( ) (sebab di Entity akan
sekaligus memanggil method ejbLoad and
ejbStore jadi akan lebih lambat tapi lebih aman dari segi transaksi).
Gunakan bantuan class lain.
misalkan ValueObject.getValue( ). Sun memperkenalkan metode baru namanya JDO
(java database object) , sudah
ready under development community. Yang opensource dan ready use coba lihat
di www.castor.org walaupun speknya
berbeda dengan yang punyanya sun.
Contoh simple Entity :
public class ValueObject(){
String someValue;
public String getValue(){return this.someValue;}
public void setValue(String value){this.someValue=value;}
}
public class CacheClass implements EntityBean {
public String someValue;
public ValueObject getValue(ValueObject obj){
obj.setValue(this.someValue);
}
public void setSomeValue(String someValue){
// update field someValue
}
public String getSomeValue(){
return this.someValue;
}
public void ejbCreate()
{
//select from database
}
public void ejbLoad() {
//load into database
}
public void ejbPassivate() {
}
public void ejbRemove() {
//remove somefield in database
}
public void ejbStore() {
//data database
}
}
----- Original Message -----
From: "Mahfudh Junaryanto" <junaryanto @ somewhere.in.the.world>
> Kamu bikin event-listener model & DataCache ...
>
> Setiap persistence component generate event(didalamnya
> ada data yg baru diuapdate), yang ditangkap oleh
> DataCache (bisa berupa simple Hashtable)...
> jadi server nggak perlu query ke database ..
----------
Piksi-L @ somewhere.in.the.world merupakan 'mailing-list' alumni asisten Piksi,
ITB, Indonesia.
Opini yang disampaikan di forum ini merupakan pendapat/sikap
pribadi, kecuali secara eksplisit dinyatakan lain, dan *sama sekali*
tidak berkaitan dengan kelembagaan Piksi ITB secara formal.
Untuk berhenti, kirim email ke piksi-l-unsubscribe @ somewhere.in.the.world
Pengelola Piksi-L: piksi-l-owner @ somewhere.in.the.world
Informasi Piksi-L: http://www.yahoogroups.com/group/piksi-l
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
Dihasilkan pada Thu Sep 22 18:41:56 2005 | menggunakan mhonarc 2.6.10