RSS
 

Google Summer of Code 2012: results

23 Apr

So here we are, after one month of hard work with the students, they have been notified by Google about the acceptance or rejection of their proposals, so lets expose some results:

  • We ended up with 26 students/applications
  • The mentors team have rated and filtered all of them so after our first round we have 12 still in competition, 14 are out.
  • The 12 applications were pretty good, so based on a mix of criteria we choose the “awesome” proposal/students

 

We would like to congratulate the following “awesome” students that were accepted, they  did a hard work during the last weeks:

 

For people who was not accepted this year, we want to tell that persists on this, join to Summer of Code is not easy, even for us it took 3 years. The key is to keep going and get involved as much as you can, no matters the project.. if you are really motivated… you will increase your chances.

As you know, we are an open source project, a short but open community looking forward to welcome any person interested into contribute. You can join us any time.

That’s all for now, the first phase is over and now the fun begins. Happy Hacking !!!

 
 

Monkey HTTP Daemon / Google Summer of Code 2012

17 Mar

This year have been very exciting for Monkey Project, we are implementing cool features for our next v1.0 release and today we got the most great news that we could expect:

Your Organization Application for “Monkey HTTP Daemon” in
Google Summer of Code 2012 has been accepted.

Today begins a new stage for our project, after thousands of work hours and many years putting our best effort, we are finally being recognized internationally as a strong community with serious objectives and delivering a high quality product. This is a great opportunity to grow in different aspects of the project: organization, community and software improvement.

We invite to any student around the world to apply for our organization, we are committed to improve the server side of the web, we deal with embedded devices, performance, scalability, networking, and many cool stuff , innovation is one of our primary focus. Please review our project ideas site:

 

If you think that the web can still be improved, we are in the same page and we are looking to hear from you, meet us on irc.freenode.net #monkey or through our mailing list

 
 

Duda: web services framework for Monkey

13 Mar

There is one fact: we are in exciting times for the project. Our HTTP core is consolidated since a while ago, it works in non-blocking mode, it has a nice indented configuration model and provide an advanced API to extend the core behavior, through this we support different behaviors by layers like IPv4, IPv6, SSL encription, security by subnets, basic auth, shell, log writer, etc.

There is a common question from people around the project: “where are you going ?” and the answer is: do you see that embedded Linux Box ?, there’s where we go. Common web servers lack of performance for embedded systems, most of them have focused in high production environments. our focus is different.

Our tech world is service oriented and i would say that implemented through a fat HTTP software stack, simple things are done in scripting languages that requires a process context or even be ran in a JVM environment, that is not lightweight and requires extra resources to be scalable. If you plan to implement a web service for embedded you should start forgetting about Java and PHP and think in lightweight options. Please Google a little about the options available and then continue reading here.

Read the rest of this entry »

 
 

Basic Authentication

09 Feb

Basic Authentication is provided by auth plugin.  In order to protect your virtual hosts you have to do the following steps:

  1. Enable Auth plugin: make sure the auth plugin is enabled in the /etc/monkey/plugins.load configuration file
  2. Create the users list file:
    # /usr/sbin/mkpasswd -c  -b /etc/monkey/plugins/auth/users.mk  myuser mypassword
  3. Edit your virtual host file and set the authentication rules, e.g: edit /etc/monkey/sites/default and append:
[AUTH]
    Location /
    Title    "Let's protect our content..."
    Users    /etc/monkey/plugins/auth/users.mk

Now restart Monkey and reload your web page, you will get the authentication box for the specific virtual host. If you add/delete users you will need to restart the service to make the changes take effect, we are working in a smart way to fix this behavior without affect performance or extra I/O.

 
 

New year.. new releases

13 Jan

We started the year pretty good, with the release of Monkey 0.30 and 10 days later Monkey 0.31. The major goals on this version are the fully support of IPv6 merged in the Liana plugin, as well minor fixes.

Monkey project keeps rocking and we are hard working looking forward to archive our goals this year, if you want to get involved do not hesitate to contact us back on our mailing list or in the IRC chat at irc.freenode.net channel #monkey .

 

 

Startechconf: Monkey, HTTP Server everywhere!

03 Nov

This Friday and Saturday (Nov 4th – 5th), Monkey Project will be present at the Startechconf.com, we will give a talk about the project goals, internals and current features. We are preparing a really nice presentation, including a few presents for the lucky attendances.

Do not forget to follow us at @monkeywebserver

 

Cheetah Shell

14 Oct

Monkey provides a plugin called Cheetah!. This exports a shell or command line interface to retrieve status of the server. By default the plugin is not loaded, if you want to try Cheetah! please do the following:

  1. Enable Cheetah! plugin:
    • Edit the file plugins.load which is under the monkey configuration directory
    • Uncomment the line:
      • Load /path/to/monkey/plugins/monkey-cheetah.so
  2. Configure the Cheetah!:
    • Cheetah can work in two modes: STDIN or SERVER.
      • STDIN:  Cheetah! will listen for incoming commands from STDIN
      • SERVER: Cheetah! will place a unix socket domain to listen for incoming commands, if monkey is running in TCP port 2001, it will create a unix socket file under /tmp/cheetah.2001.  The unix socket name will change depending of the port used by Monkey.
    • Edit the configuration file:
      • Under the configuration Monkey directory, locate the file plugins/cheetah/cheetah.conf and set the Listen directive value: STDIN or SERVER, e.g:
      •  

        [CHEETAH]
            # Listen :    
            # --------   
            # Cheetah! listen for input commands as any shell, this can be done    
            # using the standard keyboard input or through a unix pipe where you   
            # need to connect using the Cheetah! client.    
            #   
            # The Listen directive allows you to define which input method to use.    
            # Valid values for Listen are STDIN or SERVER.      
        
            Listen SERVER
  3. Connect to Cheetah!:
    • If you are using STDIN mode, you are already there :)
    • If you are using SERVER mode, type the command:  nc -U /tmp/cheetah.2001

 

 

Now you can play with the commands available, for more details type ‘ help’ or ‘ \h’

     
    3 Comments

    Posted in How To's

     

    Debian & Ubuntu Packages

    13 Oct

    Monkey Project is distributing Debian and Ubuntu packages for x64 from our new packages server. If you are a Debian or Ubuntu user please do the following steps:

    • Edit your /etc/apt/sources.lists file and add the following entry:

    • Update your packages list/cache:

      apt-get update

    • Install Monkey:

      apt-get install monkey

    In our repository you will find the following packages:

    • monkey
    • monkey-doc
    • libmatrixssl3.2
    • libmatrixssl3.2-dev
     
    No Comments

    Posted in How To's

     

    Monkey 0.20.3 is out !

    13 Oct

    In a short time we did 3 minor fixes releases, thanks for the contributors for bug reports and fixes provided, please check the official announcement here:

    http://monkey-project.com/Announcements/v0.20.3

    Happy HTTPing :)

     
     

    Monkey 0.20 is out

    01 Oct

    Monkey 0.20 code name “Maduro Frito con queso” (fried mature banana with cheese) is finally out!. It took a while to have this release ready but here we are, a really mature community and project ready to be enjoyed by the free software community.

    If you are wondering about what have changed, please refer to the following summary, for more details please follow the bottom link to the official Announcements page.

    What’s new / Changes ?

  1. Optimized Scheduler
  2. Optimized headers TOC parser
  3. String parser is 57% faster
  4. Banana: get port and pid file from the config file
  5. Auth: new basic authentication plugin
  6. New TransportLayer directive in monkey.conf
  7. QA: improved keepalive test script
  8. Fix: host alias setup
  9. Fix: unmask files when going to daemon mode
  10. Palm: new template request
  11. Cheetah: fix workers command
  12. Mandril: new security rules based on subnets
  13.  

    More details here:
    http://monkey-project.com/Announcements/v0.20.0