After visiting java.net, I noticed an article related to running JavaEE in a Docker container and realized I haven’t worked in Docker for a while. Today I’m going to do a little refresher course in Java and Docker. Also, tonight is the San Diego Java Users Group meeting.
Author: brintoul@sbcglobal.net
Doing Some Coursera Work
I’ve enrolled myself in “Algorithms, Part I” from Princeton University on Coursera. I’ve put a hold on the textbook through my San Diego Public Library iOS app and expect it to be at my local branch by the weekend. What a time we live in!
I hope to go all the way through the course and not get distracted by the many other topics which interest me. Gotta stay on course!
Hadoop Time
It’s finally time for me to look into Hadoop a little more closely.
I cloned the Hadoop 2.7.3 repo and built it without too much difficulty. I even got the daemon running locally in single node mode. After running through a few of the examples, etc., I wondered what Amazon Web Services had to offer as far as running a Hadoop cluster goes. That’s when I discovered Amazon EMR. After looking into the documentation – which is as excellent as I expected from the Amazon folks – I decided I would run through their example and incur the $1.05 or so it would cost to bring up a cluster and play with it. Hopefully another post will be forthcoming on the experience…
Building S2N
s2n is the new TLS/SSL implementation by Amazon.
I retrieved the git repository and tried to build it, only to have it crash while running a unit test. I put some debugging statements in the test but they never showed up. I was getting an “error 139” error and initial searches indicated it might have been a gcc problem.
Turns out, my stack was blowing up during initialization of an array and I needed to increase my stack size using “ulimit -s 16284”. An interesting little problem for me since I haven’t worked in the C world for quite some time.
IBM Blockchain Research
I went over a little bit of IBM’s “Blockchain for Developers” online course and I must say it’s pretty nice. It really breaks down the goals of blockchain very well and I recommend it. I hope to finish it soon, but I have also been busy with topics relevant to my job search.
Long Absence and Quick Update
I’ve been doing a little more job searching and holiday activity stuff, so I’ve been away from my blog for a while.
I am looking into participating in the Bioinformatics Contest 2017 put on by Rosalind just for kicks. Not even sure I’ll make it past the qualifying round, but I like trying to solve these puzzles.
JSON-B Poking
Just discovered the JSON-B project after reading the November/December issue of Java Magazine. It’s like JAXB for JSON. I’m gonna look at it a little bit today.
(Later) Pretty disappointing. Doesn’t provide the ability to generate Java classes from either sample JSON or anything like a JSON schema…
Playing with Some Java Concurrency Classes
So I used Spring Boot to bang out a REST service which I call a “delay service” which simply sleeps for the amount of time (in seconds) given as a path parameter like this: http://<host>/delay/{timeInSeconds}. I created this to actually see my web services client call the service many times in parallel to see an ExecutorService work as advertised. The ExecutorService implementation I chose was a simple fixed-size thread pool.
As expected, when I used the client to call the delay service several times in parallel with varying delay times, the entire time spent was roughly the same as the longest delay time.
Kinda neat. Later I ran into the RxJava project which seems to allow you to do the same thing in a “reactive” manner (and much, much more) and I’ll be looking at that soon.
Missing For a Week
I’ve not made any posts for a while but it’s not because I haven’t been busy doing some things. I’ve played a little with Bootstrap and you can see where I’m at with that by going to https://www.controlledthinking.com/bootstrap/index.html
I also tinkered around a little bit with my Github repositories and you can find me there at https://github.com/brintoul/
Spring Boot and Docker
I went through this Spring Framework page describing running a Spring Boot application in a Docker container. Pretty cool. I will investigate Spring Boot some more and also the Dockerfile used to create the image being used. There are a couple of new items I’ve never seen, including “ENTRYPOINT” and “VOLUME”.
What I’d like to do is add a bit of database access to this skeletal project. Maybe utilize the MySQL Docker image I downloaded a few days ago with this new Spring Boot image to make a CRUD-type application with the two images.
I got a Spring Data JPA project going and working against my Docker MySQL image. One difficulty I ran into was the port on which MySQL is running. I’m already running MySQL on this machine, so 3306 is in use. And when I fire up the image, it’s just grabbing a random port which makes it difficult to configure the Spring app’s datasource. Not sure how much I’ll work on that for now…