comparison docs/linux.html @ 0:3dc0c5604566

Initial checkin of blitz 2.0 fcs - no installer yet.
author Dan Creswell <dan.creswell@gmail.com>
date Sat, 21 Mar 2009 11:00:06 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:3dc0c5604566
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <title>Linux Notes</title>
5 </head>
6 <body>
7 <h1>Linux Notes</h1>
8
9 <h2>Get the right JDK</h2>
10
11 <p>Various recent distributions, notably Redhat 9 and Fedora Core 1, come with a new thread library, <a href="http://people.redhat.com/drepper/nptl-design.pdf">NPTL</a> which will not work with JDK 1.4.0 or less. If you use one of these distributions, ensure you've installed JDK 1.4.1 or better for best results.
12 </p>
13 <h2>Configuring the Linux Kernel</h2>
14
15 <p>The development series 2.5 (currently 2.6-testX) introduced a number of new disk I/O schedulers. The default has been changed to be the anticipatory scheduler. Whilst the performance of this scheduler is generally good, there may be occasions where it affects Blitz's performance. Thus, for performance testing purposes it's worth comparing performance of the default scheduler with that of the deadline scheduler.</p>
16
17 <p>The desired scheduler can be selected adding a kernel boot parameter as follows:
18 </p>
19 <pre>
20 elevator=deadline
21 </pre>
22
23 <p>It's worth noting that most RDBMS tend to run best with the deadline scheduler.</p>
24
25 <h2>Configuring Multicast</h2>
26
27 <p>Various Linux distributions do not have multicast enabled by default. Before attempting to run JINI, ensure that your network interface supports multicast and that the appropriate routes are configured.
28 </p>
29 <p><b>To check your network interface supports multicast:</b>
30 </p>
31 <pre>
32 $ ifconfig -a
33 eth0 Link encap:Ethernet HWaddr 00:90:F5:0E:22:B2
34 inet addr:192.168.123.169 Bcast:192.168.123.255 Mask:255.255.255.0
35 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
36 RX packets:53660 errors:0 dropped:0 overruns:0 frame:0
37 TX packets:27334 errors:0 dropped:0 overruns:0 carrier:0
38 collisions:0 txqueuelen:1000
39 RX bytes:72230735 (68.8 Mb) TX bytes:1944680 (1.8 Mb)
40 Interrupt:9 Base address:0x2800
41
42 lo Link encap:Local Loopback
43 inet addr:127.0.0.1 Mask:255.0.0.0
44 UP LOOPBACK RUNNING MTU:16436 Metric:1
45 RX packets:244325 errors:0 dropped:0 overruns:0 frame:0
46 TX packets:244325 errors:0 dropped:0 overruns:0 carrier:0
47 collisions:0 txqueuelen:0
48 RX bytes:73688746 (70.2 Mb) TX bytes:73688746 (70.2 Mb)
49 </pre>
50
51 <p>Note the <code>MULTICAST</code> attribute in the third line of the eth0 properties. If this is not present, it's possible that your kernel has not been compiled with multicast support. <em>But</em> before re-compiling the kernel try enabling multicast on your network interface (<code>eth0</code> in this case) via <code>ifconfig</code>:</p>
52
53 <pre>
54 ifconfig etho multicast
55 </pre>
56
57 <p><b>To check that multicast routing is configured:</b></p>
58
59 <pre>
60 $ route -n
61 Kernel IP routing table
62 Destination Gateway Genmask Flags Metric Ref Use Iface
63 192.168.123.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
64 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
65 224.0.0.0 0.0.0.0 240.0.0.0 U 0 0 0 eth0
66 0.0.0.0 192.168.123.254 0.0.0.0 UG 0 0 0 eth0
67 </pre>
68
69 <p>If the destination <code>224.0.0.0</code> entry is not present you will need to enable multicast routing. To enable multicast routing, run the following command as root:</p>
70
71 <pre>
72 # route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
73 </pre>
74
75 <p>On Redhat systems, one can often configure this route statically via the network setup configuration tools. Alternatively, try executing this line as part of a startup script in <code>/etc/rc.d/*</code>.</p>
76
77 <p><div align="center"><a href="../index.html">Back to Documentation</a></div></p>
78 </body>
79 </html>