Tuesday, June 30, 2009

App Server Performance Tuning Reference


Garbage Collection Guide

Performance Tuning Tips


Jboss Tips
  • 32bit OS max heap size is 2GB Ram. Inorder to increase the heap size, add jboss instance.

Wednesday, June 24, 2009

Attractive Tourism in Google Earth


Create tour in google earth for all tourist attraction.
  • Bring tourist to go arround tourist attraction.
  • Youtube included for more interactive.
  • Search engine looking for place to go example shopping, outlet, night market,night scene, beach...
Thing to do
  • Collect tourist attraction information.
  • Build all the 3D building for tourist attraction in google earth. It not only building. 3D can be table, swimming poor, car... All Objects.
  • Make movie in youtube.
Money channel Hotel, Restaurant, Government Tourism
  • Specialist tourism IT department for government.
  • Search nearest hotel.
  • Build 3d hotel for them. Information and youtube intro the hotel. Then bring customer to their hotel home page.
  • Ocean feature in google earth is focus on educate ppl importance of environmental protection. Help government to educate ppl, submit geographical data for research. See the youtube Google earth 5 launch event to know more about ocean.


Technically work!!! Totally not an issue.
It easier than war game in google earth. Start this phase first for training our guy to get use to google earth technology. Prepare for the second phase of social networking and war game.

Progress
Learning
  • Using SketchUp to draw 3d building and integrate to google earth.
  • Export kmz file for ppl download.
Next - How to import it to google earth to make it share with all users. No need download individual file to view. Because it can be public in google servel or private in individual kmz file.

Thursday, June 18, 2009

Vista Setup Guide

1) Step

UAC Popup "Windows needs your permission to continue":

UAC Popup example

How to quickly disable User Account Control (UAC):

  1. Click the round blue Windows Start button. Now click Control Panel
  2. From the Control Panel, click User Accounts and Family Safety (or User Accounts if your in classic view)
  3. Click the option to Turn User Account Control on or off
  4. Uncheck the box next to Use User Account Control (UAC) to help protect your computer and click OK
  5. Restart when prompted

2 )Step Configuration for Vista accept XP folder
Vista uses the more-picky NTLMv2 network protocol, while XP uses NTLMv1. The answer is, therefore, to switch Vista to use NTLMv1.

Here's the Mac-oriented post which tells how to modify Vista: http://www.broadbandreports.com/faq/14837

Rewriting it in Windows terminology, it would read:

To allow Vista to talk to your XP/2000/Linux shares, you must allow Vista to authenticate via NTLMv1:

If you have Windows Vista Home Basic/Premium:
Open the registry editor. Navigate to

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa.

There will be a value called LmCompatibilityLevel. Set that to DWORD 1. Reboot and try to connect again.

Sunday, June 14, 2009

Research 1 on Google earth

Thing can be on google earth



Create 3d model on google earth by using sketchup



Google Earth can be develop using Java Gwt API for Google Map

KML in Google Earth

KML is a file format used to display geographic data in an Earth browser, such as Google Earth, Google Maps, and Google Maps for mobile. You can create KML files to pinpoint locations, add image overlays, and expose rich data in new ways. KML is an international standard maintained by the Open Geospatial Consortium, Inc. (OGC).


KML Interactive Sampler You can see what can be done in google earth

Wednesday, May 6, 2009

Monday, May 4, 2009

World War on Google Earth

What can be done on google earth? Thing come out from my mind is game but it can link with the hottest idea in 2000 century which is social networking. Since google eart provide us the virtual earth. We can do anything on top of it right. We can rotate,split,stretch and finally boom the earth. Cool men...So why not we create a World War Game on Google Earth. since google already provide drawing feature for user to draw building on it. Then we just need to make animation on it. Create 3D ppl on it.


War Game
Player can register their house and draw their house on it. Then trying to protect their house and country. Thus, the war location is same as our earth. Player can be soldier when there is a war or can attact another country.










Social networking
Individual have their own identity in the virtual world. So you can do anything that you are not dare to do in real world for example boy wanted to tackle a girl but he scare on real worth. It can be done there. Whatelse...






Animation on Google Earth
Finally i found out the google earth api and demo

Monday, January 12, 2009

JBoss Clustering with Microsoft Network Load Balancing

Jboss configuration
Changes in jboss-service.xml
C:\Server\jboss-4.2.2\server\all\deploy\jboss-web-cluster.sar\META-INF\jboss-service.xml
1) delete <Config> <UDP> .... </Config>
2) paste the following code to the same area of deleted code.
The initial_hosts highlighted bellow is to specify other server's IP.
3) Sample jboss-service.xml is located in “NLB Manager PrintScreen & Config File” folder
<config>
<TCP start_port="7810" loopback="true" bind_addr="${bind.address}"
tcp_nodelay="true"
recv_buf_size="20000000"
send_buf_size="640000"
discard_incompatible_packets="true"
enable_bundling="false"
max_bundle_size="64000"
max_bundle_timeout="30"
use_incoming_packet_handler="true"
use_outgoing_packet_handler="false"
down_thread="false" up_thread="false"
use_send_queues="false"
sock_conn_timeout="300"
skip_suspected_members="true"/>
<TCPPING initial_hosts="192.168.0.7[7810]" port_range="3"
timeout="3000"
down_thread="false" up_thread="false"
num_initial_members="3"/>
<MERGE2 max_interval="100000"
down_thread="false" up_thread="false" min_interval="20000"/>
<FD_SOCK down_thread="false" up_thread="false"/>
<FD timeout="10000" max_tries="5" down_thread="false" up_thread="false" shun="true"/>
<VERIFY_SUSPECT timeout="1500" down_thread="false" up_thread="false"/>
<pbcast.NAKACK max_xmit_size="60000"
use_mcast_xmit="false" gc_lag="0"
retransmit_timeout="300,600,1200,2400,4800"
down_thread="false" up_thread="false"
discard_delivered_msgs="true"/>
<pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
down_thread="false" up_thread="false"
max_bytes="400000"/>
<pbcast.GMS print_local_addr="true" join_timeout="3000"
down_thread="false" up_thread="false"
join_retry_timeout="2000" shun="true"
view_bundling="true"/>
<FC max_credits="2000000" down_thread="false" up_thread="false"
min_threshold="0.10"/>
<FRAG2 frag_size="60000" down_thread="false" up_thread="false"/>
<pbcast.STATE_TRANSFER down_thread="false" up_thread="false" use_flush="false"/>
</config>

4) change REPL_ASYNC to REPL_SYNC
<attribute name="CacheMode">REPL_SYNC</attribute>

Changes in cluster-service.xml
C:\Server\jboss-4.2.3.GA\server\all\deploy\cluster-service.xml
1) delete <Config> <UDP> .... </Config>
2) paste the following code to the same area of deleted code.
The initial_hosts highlighted bellow is to specify other server's IP.
<Config>
<TCP start_port="7800" loopback="true" bind_addr="${bind.address}"
tcp_nodelay="true"
recv_buf_size="20000000"
send_buf_size="640000"
discard_incompatible_packets="true"
enable_bundling="false"
max_bundle_size="64000"
max_bundle_timeout="30"
use_incoming_packet_handler="true"
use_outgoing_packet_handler="false"
down_thread="false" up_thread="false"
use_send_queues="false"
sock_conn_timeout="300"
skip_suspected_members="true"/>
<TCPPING initial_hosts="192.168.0.7[7800]" port_range="3"
timeout="3000"
down_thread="false" up_thread="false"
num_initial_members="3"/>
<MERGE2 max_interval="100000"
down_thread="false" up_thread="false" min_interval="20000"/>
<FD_SOCK down_thread="false" up_thread="false"/>
<FD timeout="10000" max_tries="5" down_thread="false" up_thread="false" shun="true"/>
<VERIFY_SUSPECT timeout="1500" down_thread="false" up_thread="false"/>
<pbcast.NAKACK max_xmit_size="60000"
use_mcast_xmit="false" gc_lag="0"
retransmit_timeout="300,600,1200,2400,4800"
down_thread="false" up_thread="false"
discard_delivered_msgs="true"/>
<pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
down_thread="false" up_thread="false"
max_bytes="400000"/>
<pbcast.GMS print_local_addr="true" join_timeout="3000"
down_thread="false" up_thread="false"
join_retry_timeout="2000" shun="true"
view_bundling="true"/>
<pbcast.STATE_TRANSFER down_thread="false" up_thread="false" use_flush="false"/>
</Config>

</attribute>
<depends>jboss:service=Naming</depends>
</mbean>

3) replace the HAJNDI portion with following code. Highlighted word is the only changes.
<mbean code="org.jboss.ha.jndi.HANamingService"
name="jboss:service=HAJNDI">
<!-- We now inject the partition into the HAJNDI service instead
of requiring that the partition name be passed -->
<depends optional-attribute-name="ClusterPartition"
proxy-type="attribute">jboss:service=${jboss.partition.name:DefaultPartition}</depends>
<!-- Bind address of bootstrap and HA-JNDI RMI endpoints -->
<attribute name="BindAddress">${bind.address}</attribute>
<!-- Port on which the HA-JNDI stub is made available -->
<attribute name="Port">1100</attribute>
<!-- RmiPort to be used by the HA-JNDI service once bound. 0 => auto. -->
<attribute name="RmiPort">1101</attribute>
<!-- Accept backlog of the bootstrap socket -->
<attribute name="Backlog">50</attribute>
<!-- The thread pool service used to control the bootstrap and
auto discovery lookups -->
<depends optional-attribute-name="LookupPool"
proxy-type="attribute">jboss.system:service=ThreadPool</depends>

<!-- A flag to disable the auto discovery via multicast -->
<attribute name="DiscoveryDisabled">false</attribute>
<!-- Set the auto-discovery bootstrap multicast bind address. If not
specified and a BindAddress is specified, the BindAddress will be used. -->
<attribute name="AutoDiscoveryBindAddress">${bind.address}</attribute>
<!-- Multicast Address and group port used for auto-discovery -->
<attribute name="AutoDiscoveryAddress">${jboss.partition.udpGroup:230.0.0.4}</attribute>
<attribute name="AutoDiscoveryGroup">1102</attribute>
<!-- The TTL (time-to-live) for autodiscovery IP multicast packets -->
<attribute name="AutoDiscoveryTTL">16</attribute>
<!-- The load balancing policy for HA-JNDI -->
<attribute name="LoadBalancePolicy">org.jboss.ha.framework.interfaces.RoundRobin</attribute>

<!-- Client socket factory to be used for client-server
RMI invocations during JNDI queries
<attribute name="ClientSocketFactory">custom</attribute>
-->
<!-- Server socket factory to be used for client-server
RMI invocations during JNDI queries
<attribute name="ServerSocketFactory">custom</attribute>
-->
</mbean>

4) Sample cluster-service.xml is located in “NLB Manager PrintScreen & Config File” folder

Start your Jboss with the following command line.
Located in NLB Manager PrintScreen & Config File/runCluster.bat.
Modify the highlighted IP. 192.168.0.225 is virtual IP and 192.168.0.7 is local IP.
run -Dignore.bind.address=true -b 192.168.0.225 -Dbind.address=192.168.0.7 -c all