Archive

Archive for June, 2010

Distribute Cache With Ehcache and Terracotta

pada pembahasan sebelumnya, kita membahas bagaimana melakukan caching dengan mengistegrasikan Terracotta dengan Ehcache. Saat riset lalu, saya mendapat kesulitan tentang terracotta integration module, karena harus menggunakan tim-get.sh untuk melakukan install online. Namun karena keterbatasan atas fasilitas internet, akan sangat menjadi sulit, dan setelah bertanya pada forum, didapatkan hasil, bisa cek di http://forums.terracotta.org/forums/posts/list/3667.page#20160.

So, sekarang kita bisa langsung menggunakan tim-<module>.jar sesuai keinginan kita dengan mendownload secara manual lewat:

http://www.terracotta.org/download/reflector/maven2/org/terracotta/modules/<nama module>/<versi>/<nama module-versi>.jar

karena ini merupakan cara yang tidak wajar maka memiliki kelemahan, yaitu pada install folder terracotta, kita harus membuat folder dengan nama <module> dan didalam folder tersebut buat kembali folder dengan nama <version>, baru letakkan tim-<module>.jar kedalam folder tersebut.

Setelah masalah satu selesai, maka akan muncul masalah selanjutnya, yaitu bagaimana gara module tersebut bisa terbaca oleh terracotta pada tc-config.xml? Maka kita harus menambahkan <repository>{path menuju module.jar}</repository> diatas nama module karena jika menggunakan eclipse module repository justru ke eclipse installation folder. Jadi repository harus ada.

Untuk selanjutnya, contohnya ialah sebagai berikut:

<modules>

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/tim-concurrent-collections/1.3.0</repository>

<module name=“tim-concurrent-collections” version=“1.3.0” />

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/tim-distributed-cache/1.3.0</repository>

<module name=“tim-distributed-cache” version=“1.3.0” />

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/timehcache-1.7/1.5.0</repository>

<module name=“tim-ehcache-1.7” version=“1.5.0” />

</modules>

jadi susunan cara penamaan harus mengikuti aturan seperti diatas. Terdapat banyak module dikarenakan module satu membutuhkan dependensi terhadap module lainnya. Perlu diingat juga, jika menggunakan terracotta 3.2.0, maka ehcache yang compatible ialah sekitar Ehcache-1.7, dan tim-ehcache -nya juga harus compatible, terracotta sangat sensitif terhadap hal ini. Jadi akan kita bahas setelah masuk kebadan program.

Seperti biasa, buat kelas seperti dibawah ini:

package org.terracotta.sample;

import net.sf.ehcache.Cache;

import net.sf.ehcache.CacheManager;

import net.sf.ehcache.Element;

public class UserEhcacheExample {

private CacheManager manager = new CacheManager();

public String findUser(Integer id) {

String user = cacheGet(id);

if (user == null) {

user = fetch(id);

cachePut(id, user);

System.out.println(“\t- MISS”);

} else {

System.out.println(“\t- HIT”);

}

return user;

}

private String cacheGet(Integer id) {

Cache userCache = manager.getCache(“sampleTerracottaCache”);

Element element = userCache.get(id);

if (element != null) {

return (String) element.getObjectValue();

} else {

return null;

}

}

private void cachePut(Integer id, String user) {

Cache userCache = manager.getCache(“sampleTerracottaCache”);

userCache.put(new Element(id, fetch(id)));

}

private String fetch(Integer id) {

switch (id.intValue()) {

case 0: return “Ari Zilka”;

case 1: return “Alex Miller”;

case 2: return “Geert Bevin”;

case 3: return “Taylor Gautier”;

case 4: return “Jonas Boner”;

default:

throw new RuntimeException(“Unknown id: “ + id.intValue());

}

}

public static void main(String arg[]) throws InterruptedException {

UserEhcacheExample userCache = new UserEhcacheExample();

for (int i = 0; i < 10; i++) {

helpFind(i % 5, userCache);

}

}

public static void helpFind(int id, UserEhcacheExample userCache) {

System.out.print(“Find “ + id);

userCache.findUser(id);

}

}

pada method cacheGet(), terlihat kita mengambil definisi cache dengan nama sampleTerracottaCache, yang sudah didefinisikan pada ehcache.xml, yaitu definisi cache dan tempat yang dipesan pada memorui dimana kita menyimpan cache.

Integrasi antara Ehcache dan Terracotta pada komputer rumah saya memiliki keanehan, yaitu jika menggunakan eclipse, dalam melakukan running terhadap aplikasi DSO kita, kita tidak bisa langsung melakukan “run as Terracotta DSO application”, maka akan terjadi error seperti dibawah ini:

2010-05-28 20:21:51,902 INFO – Terracotta 3.2.0, as of 20100107-140117 (Revision 14244 by cruise@su10mo5 from 3.2)

2010-05-28 20:21:52,928 INFO – Configuration loaded from the file at ‘/home/kuuga/Ehcache/DistributeCachingTuts/tc-config.xml’.

2010-05-28 20:21:53,403 INFO – Log file: ‘/home/kuuga/Ehcache/DistributeCachingTuts/terracotta/client-logs/terracotta-client.log’.

2010-05-28 20:21:57,200 INFO – Connection successfully established to server at 127.0.1.1:9510

Exception in thread “main” net.sf.ehcache.CacheException: Unable to load class net.sf.ehcache.terracotta.StandaloneTerracottaStoreFactory. Initial cause was The Terracotta dso-boot.jar is specified via -Xbootclasspath. This is not a correct configuration, please remove it

at net.sf.ehcache.util.ClassLoaderUtil.createNewInstance(ClassLoaderUtil.java:109)

at net.sf.ehcache.TerracottaStoreHelper.newStoreFactory(TerracottaStoreHelper.java:101)

at net.sf.ehcache.CacheManager.init(CacheManager.java:284)

at net.sf.ehcache.CacheManager.<init>(CacheManager.java:260)

at org.terracotta.sample.UserEhcacheExample.<init>(UserEhcacheExample.java:6)

at org.terracotta.sample.UserEhcacheExample.main(UserEhcacheExample.java:43)

Caused by: net.sf.ehcache.CacheException: The Terracotta dso-boot.jar is specified via -Xbootclasspath. This is not a correct configuration, please remove it

at net.sf.ehcache.terracotta.StandaloneTerracottaStoreFactory.testForBootJar(StandaloneTerracottaStoreFactory.java:219)

at net.sf.ehcache.terracotta.StandaloneTerracottaStoreFactory.<init>(StandaloneTerracottaStoreFactory.java:47)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

at net.sf.ehcache.util.ClassLoaderUtil.createNewInstance(ClassLoaderUtil.java:92)

… 5 more

error masih sama seperti minggu kemarin, namun setelah melakukan beberapa percobaan konfigurasi, ditemukan bahwa hal ini karena saat kita melakukan running dengan mode diatas, dso-boot-hotspot_linux_160_17.jar terdapat kekliruan dalam build, secara otomatis akan terus terjadi seperti ini dan saya masih belum bisa cara mengatasinya, namun dalam dokumentasi ehcache, kita bisa menambahkan konfigurasi Terracotta seperti pada tc-config.xml pada ehcache.xml, tentu saja hal ini bisa karena kita telah memiliki module tim-<module>.jar, dan konfigurasi ehcache dan terracotta akan seperti dibwah ini:

<?xml version=“1.0” encoding=“UTF-8”?>

<ehcache xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance&#8221;

xsi:noNamespaceSchemaLocation=“ehcache.xsd”

updateCheck=“true” monitoring=“autodetect”>

<diskStore path=“java.io.tmpdir”/>

<cacheManagerEventListenerFactory class=“” properties=“”/>

<terracottaConfig>

<tc-config>

<servers>

<server host=“%i” name=“localhost”>

<dso-port>9510</dso-port>

<jmx-port>9520</jmx-port>

<data>terracotta/server-data</data>

<logs>terracotta/server-logs</logs>

<statistics>terracotta/cluster-statistics</statistics>

</server>

<update-check>

<enabled>true</enabled>

</update-check>

</servers>

<system>

<configuration-model>development</configuration-model>

</system>

<clients>

<modules>

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/tim-concurrent-collections/1.3.0</repository>

<module name=“tim-concurrent-collections” version=“1.3.0” />

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/tim-distributed-cache/1.3.0</repository>

<module name=“tim-distributed-cache” version=“1.3.0” />

<repository>/usr/local/terracotta/terracotta-3.2.0/modules/org/terracotta/modules/timehcache-1.7/1.5.0</repository>

<module name=“tim-ehcache-1.7” version=“1.5.0” />

</modules>

seperti contoh diatas, nama module harus sesuai, dan harus diperhatikan repository sesuai dengan path dari module untuk menghindari kesalahan. Karena menggunakan Terracotta 3.2.0, maka ehcache yang mendukung ialah 1.7 dan dpendensinya juga harus yang mendukung. Untuk bsa mengetahui dependensi karena manual, mau tidak mau harus mencoba satu persatu pada modul, maksudnya ialah karena yang digunakan ialah ehcache, maka masukkan tim-ehcache, kemudian run, jika aplikasi benar dan config benar, error yang dicapai biasanya hanya karena dependensi yang belum terpenuhi, dari situlah kita bisa melakukan download lagi module tim-nya.

<logs>terracotta/client-logs</logs>

</clients>

<application>

<dso>

<instrumented-classes>

<include>

<class-expression>

org.terracotta.sample.UserEhcacheExample

</class-expression>

</include>

</instrumented-classes>

</dso>

</application>

</tc-config>

</terracottaConfig>

kemudian pada instrumented clas pada blok class expression, class yang digunakan ialah class yang ingin dishare objeknya antar jvm, pada contoh yang tidak trivial, class pada blok ini biasanya class yang bersifat akan menjadi data yang akan dishare. Root tidak perlu didefinisikan jika datanya ada pada cache, karena kita menggunakan tim, maka tim akan secara otomatis menginisialisaikannya, nanti akan terlihat pada terracotta developer console. Disi blok konfigurasi terracotta berakhir

<defaultCache

maxElementsInMemory=“10000”

eternal=“false”

timeToIdleSeconds=“120”

timeToLiveSeconds=“120”

overflowToDisk=“true”

diskSpoolBufferSizeMB=“30”

maxElementsOnDisk=“10000000”

diskPersistent=“false”

diskExpiryThreadIntervalSeconds=“120”

memoryStoreEvictionPolicy=“LRU”

/>

<cache name=“sampleTerracottaCache”

maxElementsInMemory=“1000”

eternal=“false”

timeToIdleSeconds=“3600”

timeToLiveSeconds=“1800”

overflowToDisk=“false”>

<terracotta/>

</cache>

</ehcache>

untuk konfigurasi terakhir, yaitu default cache dan cache yang akan dipanggil, yang perlu diperhatikan disini ialah pada cache dengan nama sampleTerracottaCache, karena akan kita integrasikan pada terracotta, kita harus berikan tag <terracotta/> pada cache sebelum cache configuration kita tutup. Hal ini yang banyak tidak diikutkan pada setiap contoh pada buku Terracotta, juga blog Alex Miller http://tech.puredanger.com/2008/06/17/distributed-ehcache-with-terracotta/ bahkan. Hal ini hanya bisa dilihat pada dokumentasi Terracotta dan kurang diperhatikan sehingga integrasi biasanya gagal(hal yang saya alami). Selanjutnya ialah running terhadap aplikasi kita, nah, saat running, yang dilakukan ialah “run as java application”, hal ini justru sukses tanpa error. Berikut hasilnya:

selanjutnya saat running kedua, hasilnya ialah sebagai berikut:

cache hit semua dengan kata lain distribute cache sederhana kita berhasil, hal ini bisa kita lihat pada terracotta developer console dibawah ini:’

terlihat root sudah secara otomatis dibuat pada ehcache dengan valuenya, terlihat adanya blockk ehcache store, ini merupakn blok integrasi ehcache dengan terracotta, dan pada developer console pada live object count, terlihat statistik terhadap objek yang dishare dan dicache masih hidup dalam memori.

Dengan kata lain, integrasi telah berhasil. Permasalahan selama ini adalah pada konfigurasi dan tim-yang didownload.

Maka untuk minggu depan kita bisa maju ke hibernate caching dengan terracotta.

Sumber:

http://forums.terracotta.org/forums/posts/list/3667.page#20160.

http://tech.puredanger.com/2008/06/17/distributed-ehcache-with-terracotta/

definitive guide to terracotta

Categories: Uncategorized

Python:2nd

pada artikel sebelumnya kita hanya membahas sedikit tentang python, sekarang kita akan membahas lebih dalam dan lebih dekat dengan bahasa ini.

Python adalah bahasa pemrograman dinamis yang mendukung pemrograman berorientasi obyek. Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai platform sistem operasi. Seperti halnya bahasa pemrograman dinamis, python seringkali digunakan sebagai bahasa skrip dengan interpreter yang teintergrasi dalam sistem operasi. Saat ini kode python dapat dijalankan pada sistem berbasis:

Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi. Namun pada prinsipnya Python dapat diperoleh dan dipergunakan secara free, bahkan untuk kepentingan komersial. Lisensi Python tidak bertentangan baik menurut definisi Open Source maupun General Public License (GPL)

Sejarah

Python dikembangkan oleh Guido van Rossum pada tahun 1990 di CWI, Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang dikeluarkan CWI adalah 1.2.

Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti Python pindah ke BeOpen.com yang merupakan sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python 2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan beberapa anggota tim PythonLabs pindah ke DigitalCreations.

Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinir Guido dan Python Software Foundation. Python Software Foundation adalah sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh perusahaan komersial. Saat ini distribusi Python sudah mencapai versi 2.6.1 dan versi 3.0.

Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan guido pada acara televisi Monty Python’s Flying Circus. Oleh karena itu seringkali ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam korespondensi antar pengguna Python.

Fitur

Beberapa fitur yang dimiliki Python adalah:

  • memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan modul-modul ‘siap pakai’ untuk berbagai keperluan.
  • memiliki tata bahasa yang jernih dan mudah dipelajari.
  • memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan kembali dan penulisan ulang kode sumber.
  • berorientasi obyek.
  • memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
  • modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-modul tersebut dapat dibangun dengan bahasa Python maupun C/C++.
  • memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa pemrograman Java, python memiliki fasilitas pengaturan penggunaan ingatan komputer sehingga para pemrogram tidak perlu melakukan pengaturan ingatan komputer secara langsung.

Sumber:http://id.wikipedia.org/wiki/Python_(bahasa_pemrograman)

Categories: Uncategorized

Pengenalan UML

UML (Unified Modelling Language)

Dalam suatu proses pengembangan software, analisa dan rancangan telah merupakan terminologi yang sangat tua. Pada saat masalah ditelusuri dan spesifikasi dinegoisasikan, dapat dikatakan kita berada pada tahap rancangan. Merancang adalah menemukan suatu cara untuk menyelesaikan masalah, salah satu tool / model untuk merancang pengembangan software yang berbasis object oriented adalah UML.

Konsep Objek

Obyek dalam ‘software analysis & design’ adalah sesuatu berupa konsep (concept), benda (thing), dan sesuatu yang membedakannya dengan lingkungannya. Secara sederhana obyek adalah mobil, manusia, alarm dan lainlainnya. Tapi obyek dapat pula merupakan sesuatu yang abstrak yang hidup didalam sistem seperti tabel, database, event, system messages. Obyek dikenali dari keadaannya dan juga operasinya. Sebagai contoh sebuah mobil dikenali dari warnanya, bentuknya, sedangkan manusia dari suaranya. Ciriciri ini yang akan membedakan obyek tersebut dari obyek lainnya.

Alasan mengapa saat ini pendekatan dalam pengembangan software dengan object-oriented, pertama adalah scalability dimana obyek lebih mudah dipakai untuk menggambarkan sistem yang besar dan komplek. Kedua dynamic modeling, adalah dapat dipakai untuk permodelan sistem dinamis dan real time.

Teknik Dasar OOA/D (Object-Oriented Analysis/Design)

Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat kaidah-kaidah standar, namun teknik pemilihan obyek tidak terlepas pada subyektifitas software analyst & designer. Beberapa obyek akan diabaikan dan beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini sah-sah saja karena kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D, yaitu pemodulan (encapsulation), penurunan (inheritance) dan polymorphism.

Pemodulan (Encapsulation)

Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan menggunakan rice cooker, ibu tersebut menggunakannya hanya dengan menekan tombol. Tanpa harus tahu bagaimana proses itu sebenarnya terjadi. Disini terdapat penyembunyian informasi milik rice cooker, sehingga tidak perlu diketahui seorang ibu. Dengan demikian menanak nasi oleh si ibu menjadi sesuatu yang menjadi dasar bagi konsep information hiding.

Penurunan (Inheritance)

Obyek-obyek memiliki banyak persamaan, namun ada sedikit perbedan. Contoh dengan beberapa buah mobil yang mempunyai kegunaan yang berbeda-beda. Ada mobil bak terbuka seperti truk, bak tertutup seperti sedan dan minibus. Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi sebagai obyek mobil, obyek ini dapat dikatakan sebagai obyek induk (parent). Sedangkan minibus dikatakan sebagai obyek anak (child), hal ini juga berarti semua operasi yang berlaku pada mobil berlaku juga pada minibus.

Polymorphism

Pada obyek mobil, walaupun minibus dan truk merupakan jenis obyek mobil yang sama, namun memiliki juga perbedaan. Misalnya suara truk lebih keras dari pada minibus, hal ini juga berlaku pada obyek anak (child) melakukan metoda yang sama dengan algoritma berbeda dari obyek induknya. Hal ini yang disebut polymorphism, teknik atau konsep dasar lainnya adalah ruang lingkup / pembatasan. Artinya setiap Obyek mempunyai ruang lingkup kelas, atribut, dan metoda yang dibatasi.

Sumber: pengenalan UML.pdf

Categories: Uncategorized

Cloud Computing

Cloud computing tidak lama lagi akan menjadi realita, dan ini akan memaksa para IT professional untuk cepat mengadaptasi yang dimaksud dengan teknologi ini. Akibat dari keadaan sosial ekonomi yang terus mengalami revolusi yang sangat cepat sehingga melahirkan cloud computing, dimana teknologi ini dibutuhkan untuk kecepatan dan realibilitas yang lebih dari teknology yang sebelumnya sehingga teknologi ini nantinya akan mencapai pada tingkat investasi dalam term cloud service yang cepat dan mudah.

Cloud sudah hadir di depan kita saat ini, namun apa itu cloud ? kemana tujuanya ? dan apa resikonya? dan bagaimana organisasi IT mempersiapkan ini ? itulah pertanyaan yang setidaknya akan hadir oleh beberapa praktisi ataupun peminat IT, Cloud computing pada dasaranya adalah menggunakan Internet-based service untuk mensupport business process. Cloud service biasanya memiliki beberapa karakteristik, diantaranya adalah:

Sangat cepat di deploy, sehingga cepat berarti instant untuk implementasi.

  • Nantinya biaya start-up teknologi ini mungkin akan sangat murah atau tidak ada dan juga tidak ada investasi kapital.
  • Biaya dari service dan pemakaian akan berdasarkan komitmen yang tidak fix.
  • Service ini dapat dengan mudah di upgrade atau downgrade dengan cepat tampa adanya Penalty.
  • Service ini akan menggunakan metode multi-tenant (Banyak customer dalam 1 platform).
  • Kemampuan untuk meng customize service akan menjadi terbatas.

Teknologi cloud akan memberikan kontrak kepada user untuk service pada 3 tingkatan:

  • Infrastructure as Service, hal ini meliputi Grid untuk virtualized server, storage & network. Contohnya seperti  Amazon Elastic Compute Cloud dan Simple Storage Service.
  • Platform-as-a-service: hal ini memfokuskan pada aplikasi dimana dalam hal ini memungkinkan developer untuk tidak memikirkan hardware dan tetap fokus pada application development nya tampa harus mengkhawatirkan operating system, infrastructure scaling, load balancing dan lainya. Contoh nya yang telah mengimplementasikan ini adalah Force.com dan Microsoft Azure investment.
  • Software-as-a-service: Hal ini memfokuskan pada aplikasi denga Web-based interface yang diakses melalui Web Service dan Web 2.0. contohnya adalah Google Apps, SalesForce.com dan social network application seperti FaceBook.

Beberapa investor saat ini masih mencoba untuk mengekplorasi adopsi teknologi cloud ini untuk dijadikan bisnis sebagaimana  Amazon dan Google telah memiliki penawaran khusus pada untuk teknologi cloud, Microsoft dan IBM juga telah melakukan investasi jutaan dollar untuk ini.

Melihat dari tren ini kita dapat memprediksi masa depan, standard teknologi akan menjadi lebih sederhana karena ketersediaan dari banyak cloud service.

Lalu apa resikonya ?

Sebagaimana yang dikatakan sebagai bisnis service, dengan teknologi cloud anda sebaiknya mengetahui dan memastikan apa yang anda bayar dan apa yang anda investasikan sepenuhnya memang untuk kebutuhan anda menggunakan service ini. Anda harus memperhatikan pada beberapa bagian yaitu:

  • Service level – Cloud provider mungkin tidak akan konsisten dengan performance dari application atau transaksi. Hal ini mengharuskan anda untuk memahami service level yang anda dapatkan mengenai transaction response time, data protection dan kecepatan data recovery.
  • Privacy – Karena orang lain / perusahaan lain juga melakukan hosting kemungkinan data anda akan keluar atau di baca oleh pemerintah U.S. dapat terjadi tampa sepengetahuan anda atau approve dari anda.
  • Compliance – Anda juga harus memperhatikan regulasi dari bisnis yang anda miliki, dalam hal ini secara teoritis cloud service provider diharapkan dapat menyamakan level compliance untuk penyimpanan data didalam cloud, namun karena service ini masih sangat muda anda diharapkan untuk berhati hati dalam hal penyimpanan data.
  • Data ownership – Apakah data anda masih menjadi milik anda begitu data tersebut tersimpan didalam cloud? mungkin pertanyaan ini sedikit aneh, namun anda perlu mengetahui seperti hal nya yang terjadi pada Facebook yang mencoba untuk merubah terms of use aggrement nya yang mempertanyakan hal ini.
  • Data Mobility – Apakah anda dapat melakukan share data diantara cloud service? dan jika anda terminate cloud relationship bagaimana anda mendapatkan data anda kembali? Format apa yang akan digunakan ? atau dapatkah anda memastikan kopi dari data nya telah terhapus ?

Untuk sebuah service yang masih tergolong kritis untuk perusahaan anda, saran terbaik adalah menanyakan hal ini se detail detailnya dan mendapatkan semua komitmen dalam keadaan tertulis.

Apa yang dilakukan Smart Company saat ini ?

Ada banyak kesempatan pada organisasi IT khususnya untuk mensosialisasikan cloud service. Banyak organisasi yang mencoba untuk menambahkan firut ini kepada infrastruktur yang mereka miliki sebelumnya untuk mengambil keuntungan dari “cloud bursting“; khususnya jika anda membutuhkan kapasitas ekstra atau ekstra aktifitas, anda dapat memanfaatkan cloud ketimbang melakukan investasi resource secara in-house.

Development/test dan beberapa aktifitas yang mirip juga menjadi tempat yang bagus untuk cloud, memungkinkan anda untuk mengurangi pengeleluaran perkapita dan biaya data center yang terus meingkat dari sisi kecepatan dan uptime.

Sedangkan perusahaan yang tidak segan segan untuk mengimplementasi teknologi cloud untuk data mereka dan menyimpan nya sebagai fasilitas mereka sendiri untuk memastikan kebijakan perusahaan tersimpan dengan baik tentunya akan lebih baik, sehingga memastikan proses komputerasisasi pada cloud sebagai sistem proses yang dibutuhkan akan lebih independen.

Apakah anda siap ?

Jika organisasi anda baru saja mengeksplorasi teknologi cloud ada beberapa cloud service yang sudah cukup mapan dan dapat di pertimbangkan misalnya sebagai e-mail service. Namun untuk masalah sekuriti, dengan mengembangkan internal infrastruktur anda menjadi model cloud akan lebih baik.

Dengan begini role IT kini ikut berperan dalam hal business model yang dibutuhkan untuk perekonomian saat ini. Bagaimana anda meningkatkan kecepatan dan uptime ? dan bagaimana anda dapat men support business operation dengan sedikit dan pengeluaran yang fix?

Langkah awal yang harus anda lakukan adalah mempelajari sistem kontrak dari cloud service. pastikan setiap process menjadi simple, dapat berulang ulang dan menjadi nilai tambah untuk bisnis anda.

Kedua, anda harus mengidentifikasi service apa yang dapat anda manfaatkan di dalam cloud dan mana yang seharusnya bersifat internal. Hal ini sangat penting untuk anda ketahui mengenai system dan service core yang dapat dimanfaatkan oleh bisnis anda. dan sebaiknya anda mengkategorikan beberapa elemen bisnis anda berdasarkan resiko dari penggunaan cloud service.

Langkah terakhir, anda harus melakukan strategi sourcing untuk mendapatkan biaya yang sangat murah, namun memiliki scalability dan flexibility untuk kebutuhan bisnis anda. Hal ini termasuk pertimbangan akan proteksi data ownership dan mobility, compliance dan beberapa element seperti halnya kontrak IT tradisional.

Beberapa penjelasan mengenai Cloud Computing lainya:

Disadur dari: David Robbins, Network World
Robbins adalah seorang CTO untuk IT pada perusahaan NetApp. Dia bertanggung jawab untuk mengidentifikasi dan memilih teknologi baru dan mengadopsi teknologi tersebut yang menjadu road map dan timing untuk NetApp IT delivery.

Sumber: http://teknoinfo.web.id/ Teknologi Cloud Computing (sebuah pendekatan) » TeknoInfo.html

Oleh :raffaell

Categories: Uncategorized