Due to my endless frustrations with the Tar Library we use at work and some limitations of the format in general, I decided to create my own file format and library. There is now Feather. The Feather format can be described as a simple, extensible storage format. By using optional fields, a feather file can include all the information normally stored in a tar, or as little as the name, size, and data of a file.
While UStar formatted Tar files have a maximum filename length of 255 (with some restrictions), Feather has a maximum filename length of 23,767. Without the GNU extensions, Tar has a maximum file size limit of 8 GB. Feather, on the other hand, has a maximum file size of 8 EB, or 8 GB * 1024³. Finally, Feather has native support for UTF-16, which Tar lacks completely.
The current state of the Feather repository is a bit of a mess, because it was originally programmed solely using ByteBuffers and FileChannels, but a need arose for Input and Output Streams. I will likely remove the use of ByteBuffers and FileChannels so that there is only one official implementation of Feather.
No Comments »
Flicasa is my pet project (created for Django Dash) that I haven’t worked on in a few weeks. In the meantime, however, I’ve learned quite a bit about Django and Python by convincing my boss that our new internal website should ditch Struts for something sexier. I hope to find time to work on Flicasa soon.
Anyways, I’ve decided to make the site public. Head to http://flicasa.com to take it for a spin. All the public pages should work correctly, even if they’re a little unintuitive. If you notice a problem head to the contact page and shoot me an email.
No Comments »
Posted by: Jeff, tags: computers, server
Some interesting links to help when setting up AWStats on Ubuntu:
For example, my server doesn’t log any requests to my blog’s admin pages. This means the stats don’t contain hits for any work I’m doing on the site.
No Comments »
Posted by: Jeff, tags: computers, server
Mongrels used way too much ram. My little underpowered VPS couldn’t handle running a cluster of mongrels in addition to everything else I’ve got going on. Enter mod_rails and Ruby Enterprise Edition. These two free products of Phusion provide a nice, easy to setup alternative to standard Ruby and Mongrel. I was able to remove Mongrel from my startup and use an Apache2 module for running RoR. The only hickup I ran into was needing to reinstall a specific version of rails. The Ruby Enterprise Edition installed seemed to pick up the newest version (2.3.2), but apparently I had a dependency on 2.2.2. Once I got that straightened out I was able to reclaim precious megabytes of RAM. I once again have enough breathing room that I can focus on something other than optimizations.
Phusion
No Comments »
Posted by: Jeff, tags: computers, server
I’ve nearly completed the setup of my new host. I’ve managed to set up the following services/programs:
- Nginx as a reverse proxy
- Apache2 for heavy duty needs
- Django
- Php
- Postgresql (to use when possible)
- MySQL (to use when necessary — Wordpress)
- Mercurial
- Ruby on Rails / Mongrel Cluster
It’s been a long journey and I’ve used several resources. I’ll briefly list them for anybody else working on a similar project.
Finally, I had a problem with mongrel_cluster not starting automatically. This turned out to be due to PATH issues with the rubygem binaries. I fixed this with this command:
for file in 'ls'
do
sudo ln -s `pwd`/$file /bin/
done
That will create a symbolic link from /bin to each file in the current directory. For rubygems this would need to be run in
/var/lib/gems/1.8/bin
And finally, everything is working!
No Comments »
Posted by: Jeff
I finally have a real host for my website and I once again have an up to date WordPress installation. I’ve spent the last two days installing, configuring, and securing everything. Let’s see how this goes.
No Comments »