จะสอนวิธี Config Servlet Cache ของ Websphere ซึ่งมีวิธี 3 แบบครับ
ฮธิบายก่อน Servlet Cache คือ การเก็บค่าไว้โดยที่ไม่ต้องทำการประมวณผลใหม่ในกรณีที่เราเข้ามาด้วย parameter เดิมนะครับ (ที่จริงมีกำหนดหลายแบบ ผมขอบอกเฉพาะที่เป็น Parameter นะครับ) เช่น สมมตผมกำหนด ว่าให้ Servlet SampleCache ไว้เป็น Servlet Cache แล้วกำหนด Parameter ให้ productId เป็นไว้ เมื่อเราเข้าหน้าเวบด้วย productId=1 ครั้งแรกจะยังเข้า Servlet อยู่ แล้วครั้งต่อๆ ไปพอเราลอง Refresh หน้าดูแล้วจะไม่มีการเข้าไปใน Process ของ Servlet อีกครับ จะใช้ค่าเดิมที่เราเข้าไปครั้งแรกเลย (สามารถกำหนด Timeout ได้ครับ)
เราต้อง Config ให้ Websphere ใช้งาน Servlet Cache ก่อนโดย
- ไปที่ Servers --> Application Servers
- แล้วเลือก Server ที่เราต้องการจะ Config Servlet Cache
- ดูที่ทางขวา จะมี Container Settings ให้เลือกที่ Web Container Settings --> Web Container
- พอกดเข้าไปจะเห็น Enable Servlet Caching แล้วติ๊ก
- พอทำเสร็จก็ Restart Server ครับ เป็นอัน Config Servlet Cache ให้ใช้งานได้ล่ะ
ต่อไปเรามา Config Servlet Cache ที่เครื่องเราต่อ (ผมใช้ Config จาก cachespec.xml) ตอนแรกเราจะต้องไปเอา cachespec.xml, cachespec.dtd มาก่อน โดยจะอยู่ที่ xxx\base_v6\properties ครับ แล้ว Copy มาไว้ที่ Project ของเรา ที่ Path --> WEB-INF
แบบที่ 1 จะเป็นการ Config ให้ดูที่ Path
<class>servlet</class> --> กำนหดให้เป็นชนิด Servlet
<name>/ProductDisplay</name> --> Servlet Path ชื่อนี้
<cache-id>
<component id="productId" type="parameter"> --> กำหนดให้ Parameter ที่ส่งมาถ้ามีตัวนี้ ซ้ำ จะไม่ทำงานซ้ำ
<required>true</required> --> จำเป็นจะต้องมี Parameter ตัวนี้ส่งมาหรือเปล่า
</component>
<timeout>180</timeout> --> กำหนด Timeout ของ Servlet Cache
</cache-id>
</cache-entry>
แบบที่ 2 กำหนดที่ตัว Class เลย
<class>servlet</class>
<name>com.webpage.servlet.ProductDisplay2.class</name> --> บอกว่าเป็น Servlet Class ไหน
<cache-id>
<component id="productId" type="parameter">
<required>true</required>
</component>
<timeout>300</timeout>
</cache-id>
</cache-entry>
แบบที่ 3 จะคล้ายๆ กับแบบแรก แต่จะใช้ Servlet Cache ของ Application Server เลย
<cache-entry>
<class>servlet</class>
<name>/ProductDisplay3</name>
<cache-id>
<component id="productId" type="parameter">
<required>true</required>
</component>
<timeout>180</timeout>
</cache-id>
</cache-entry>
</cache-instance>
วิธี Config Servlet Cache ของ Application Server
- ให้ไปที่ Resources --> Cache instances --> Servlet cache instances
- คลิกเข้ามาเสร็จ ก็เลือก New
- แล้วกำหนดชื่อ JNDI Name ให้เป็นชื่อเดียวกับ ที่เรากำหนดใน cachespec.xml
- Save แล้วก็ Restart Server เป็นอันเสร็จ
Reference
http://www.webagesolutions.com/knowledgebase/waskb/waskb008/index.html
0 comments:
แสดงความคิดเห็น