Features
- LDAP Browser
- LDIF Editor
- Schema Editor
- Embeded ApacheDS
- ApacheDS Configuration
- ACI Editor
- Internationalization
- Multi-platform & in eclipse
java.nio.file
package and its related package, java.nio.file.attribute
, provide comprehensive support for file I/O and for accessing the file system. See File I/O (featuring NIO 2.0) in the Java Tutorials
Sockets Direct Protocol (SDP) is a wire protocol developed to support stream connections over InfiniBand fabric. For more information, see Understanding the Sockets Direct Protocol a trail in the Java Tutorials.
JAVA_OPTS
in catalina.sh (or catalina.bat
for Windows): Then use a tool such as YourKit to analyze the heapdump file.
When using Jasper 2 in a production Tomcat server you should consider making the following changes from the default configuration.
development - To disable on access checks for JSP pages compilation set this tofalse
.
genStringAsCharArray - To generate slightly more efficient char arrays, set this totrue
.
modificationTestInterval - If development has to be set totrue
for any reason (such as dynamic generation of JSPs), setting this to a high value will improve performance a lot.
trimSpaces - To remove useless bytes from the response, set this totrue
.
System.out
and System.err
statements from application code and use a logging toolkit such as Log4J for application logging.WEB-INF/lib
directory to Tomcat's shared library {catalina.home}/shared/lib
. This will reduce the memory used by each application and result in smaller WAR files.CATALINA_HOME/conf/tomcat-users.xml
file. Use a valve to filter by IP or hostname to only allow a subset of machines to connect (i.e. LAN machines). This can be configured at the Engine, Host, or Context level in the conf/server.xml
by adding something like the following:
server.xml
by removing comments to make it easier to read and remove connectors that you don't need. An easy way to do this is the following: Rename CATALINA_HOME/conf/server.xml
to CATALINA_HOME/conf/server-original.xml
and rename CATALINA_HOME/conf/server-minimal.xml
to CATALINA_HOME/conf/server.xml
. The minimal configuration provides the same basic configuration, but without the nested comments is much easier to maintain and understand. Do not delete the original file as the comments make it useful for reference if you ever need to make changes. Unless you are using Tomcat with the Apache server, comment out this line in CATALINA_HOME/conf/server.xml
:
CATALINA_HOME/conf/web.xml
:
-server
JVM option. This enables the server JVM, which JIT compiles bytecode much earlier, and with stronger optimizations. Startup and first calls will be slower due to JIT compilation taking more time, but subsequent ones will be faster.compression
and compressableMimeType
. For example: For more information, read the Tomcat HTTP Connector documentation.
Choosing a Java Web framework for your project is not getting any easier. Here are some things I think about when choosing a Java Web framework.
IP Blocking
IP Blocking is one of the most basic methods for censorship, as it simply prevents all packets going to or from targeted IP addresses.
But while these sorts of operations are relatively simple to execute, they don't tackle the problem of individual communications between users, especially if the users have set up multi-hop circuits that use multiple servers to create a proxy ring.
Traffic Classification (QoS)
This is a much more sophisticated method of blocking traffic than IP blocking, as one can halt any file sent through a certain type of protocol, such as FTP. Because we know that FTP transfers are most often sent through TCP port 21, they can simply limit the bandwidth available on that port and throttle transfers. "it is not too resource intensive and is fairly easy to set up."
Shallow Packet Inspection
Shallow packet inspection is basically a blunter, broader version of the deep packet inspection (DPI) technique that is used to block packets based on their content. But unlike DPI, which intercepts packets and inspects their fingerprints, headers and payloads, shallow packet inspection makes broad generalities about traffic based solely on checking out the packet header.
"Shallow packet inspection is more judging a book by its cover. If a packet says that it's SSL (Secure Sockets Layer) in the header, then a shallow packet inspector takes it at face value."
Packet Fingerprinting
This is a slightly more refined method of throttling packets than shallow packet inspection, as it looks not only at the packet header but at its length, frequency of transmission and other characteristics to make a rough determination of its content.
"A lot of things don't explicitly say what they are. For example, a lot of VPN traffic is indistinguishable from SSH traffic, which means that it would be throttled if SSH was,". "But what if businesses relied on VPN connections? You'd move the system to fingerprinting, where the two are easily distinguishable."
Deep Packet Inspection / Packet Content Filtering
DPI is the most refined method for blocking Internet traffic. As mentioned above, deep packet inspectors examine not only a packet's header but also its payload. This gives the ability to filter packets at a more surgical level than any of the other techniques discussed so far.
"Viewing a packet's contents doesn't tell you much on its own, especially if it's encrypted," . "But combining it with the knowledge gained from fingerprinting and shallow packet inspection, it is usually more than enough to figure out what sort of traffic you're looking at."