Skip to content

Instantly share code, notes, and snippets.

@jakub-bochenski
Created September 28, 2018 12:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jakub-bochenski/60df5359679539cb6bfcdb203cfebb93 to your computer and use it in GitHub Desktop.
Save jakub-bochenski/60df5359679539cb6bfcdb203cfebb93 to your computer and use it in GitHub Desktop.
#!/bin/bash -xe
cat << "JAVA" > Checker.java && javac Checker.java
import java.net.HttpURLConnection;
import java.net.URL;
public class Checker {
public static void main(String[] args) throws Exception {
HttpURLConnection conn =
(HttpURLConnection) new URL(args[0])
.openConnection();
System.exit(
200 == conn.getResponseCode()
? 0
: 1
);
}
}
JAVA
java Checker http://google.pl && echo OK || echo BAD
@jakub-bochenski
Copy link
Author

$ JAVA_8='java -ms1m -mx1m -ss228k -noverify -Djava.compiler=NONE -XX:+UseSerialGC'
$ JAVA_11='/usr/lib/jvm/java-11-openjdk-amd64/bin/java -ms1m -mx2m -ss136k -noverify -Djava.compiler=NONE -XX:+UnlockExperimentalVMOptions -XX:+UseEpsilonGC'

$ /usr/bin/time --verbose $JAVA_8 Checker http://google.pl 2>&1 | grep 'Maximum resident set size'
        Maximum resident set size (kbytes): 25708
$ /usr/bin/time --verbose $JAVA_11 Checker http://google.pl 2>&1 | grep 'Maximum resident set size'
        Maximum resident set size (kbytes): 32808
$ /usr/bin/time --verbose curl google.pl 2>&1 | grep 'Maximum resident set size'
        Maximum resident set size (kbytes): 10876
$ /usr/bin/time --verbose wget google.pl 2>&1 | grep 'Maximum resident set size'
        Maximum resident set size (kbytes): 4936

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment