2. Progress: Learn Scala language and AKKA
In the last three weeks I learned Scala and how to mix functional
paradigm to OO programs.
After several practices I am now capable to write reliable and
fine-styled Scala code compared to Java
I am learning to use AKKA, an actor-model based concurrent
toolkit, which will be applied to monitor.notifier and analyze
module
I also made comparison of various scala JDBC library for querying
log data, and currently the solution for data querying will be Slick
3. Progress: Rewrite project using Scala
The whole project has been rewritten using Scala.
Originally I plan to using Scala only for analyzing module, to
avoid traditional Java ORM methodology, which is tedious and
inflexible. After some comparison of the two languages I decided
to use Scala for the whole project.
It took me one week to do this job, however the works are
worthwhile, code size decreased from 150KB(3 modules) to
70KB, where most significant reduction comes from store
module(90KB Java file to 19KB Scala file).
I also simplified the program structure.
4. Progress: Searching for log analyze method
I am reading papers from ACM digital lib, searching for
algorithms/tools to analyze logs for debugging (distributed)
applications, and for performance tuning.
5. Project information
Project URL:
https://github.com/xkommando/PRMA
Active branch p2:
https://github.com/xkommando/PRMA/tree/p2
Supporting project Gplume:
https://github.com/xkommando/Gplume
6. Next:
Continue learning AKKA, design the distributed notification mechanism.
Find and compare appropriate algorithms
Learn to use Slick for querying data.
Implement algorithms in PRMA.analyse module.