Hello everyone, I've been put in charge of building http://comments.apache.org, a new commenting system that projects can use for adding comments to any page they want to. If you haven't heard about this yet, or need an introduction to it before reading on, please take a look at https://comments.apache.org/help.html So far, so good, it's up and running, but a second set of eyes wouldn't hurt, so I'm asking if there's anyone interested in either reviewing the code or just helping out managing the site. Some information about the system: It's built in Lua ( http://www.lua.org ) and runs via an Apache HTTPd module called mod_pLua ( https://sourceforge.net/p/modplua/wiki/Home/ ) which integrates Lua with the HTTPd server's functions. It currently runs on Lua 5.1, but should it be necessary, we'll upgrade to either LuaJIT 2 or Lua 5.2 - the scripts are compatible with all versions. The database backend is MySQL (currently using MyISAM for the comments db), managed via HTTPd's mod_dbd. Current internal response times indicate that we can handle a lot of projects (up to 50 million page visits per day), but as the number of comments go up, this figure will very likely drop as 90% of what's going on is pure database interaction, and some optimizations on the database will have to be made. Any suggestions towards this would be greatly appreciated, as I don't know a whole lot about database optimizations apart from "moar RAM!". The current configuration is whatever is default for a freshly built MySQL server on FreeBSD (i.e. I don't know). The source code for this project is available at https://svn.apache.org/repos/infra/infrastructure/trunk/projects/comments/ and probably requires some introductory knowledge of mod_pLua if you're going to review it, but it's written in a very simple way, so even people with php, perl, python etc skills should be able to understand what's going on. For those with Lua knowledge, the added functions/tables in mod_pLua can be found at https://sourceforge.net/p/modplua/wiki/New%20functions%20in%20pLua/ (except for the string.md5 function which isn't documented yet) If you want to help out managing the site, you can reply here or on IRC or wherever infra allows, and we'll see if we can hash out something. Note that since this is an infra-managed project, it's completely up to infra to decide who gets to manage the site, not me :). Managing the site will mean administrative access to the control panel, which will include duties such as checking logs for irregularities, setting up sites for people who don't know how, enabling/disabling features (or shutting down a comment site), promoting/demoting/deleting users and so on. If you're interested in reviewing the code, the following scripts could use a checkup: - common.lua: The general, all-purpose function library and initializer for all scripts - add_comments.lua: The script for adding new comments to the db - moderate.lua: The script for on-the-fly moderation of comments (this is the one activated when you moderate a comment on the sites that have comments enabled) - panel.lua: The control panel of the site. This script is perhaps a bit cluttered, and some cleaning up would be nice. - portal.lua: Manages logins for regular users as well as user registration and email validation. It has a few known kinks that, although they pose no threat at all, will need to be ironed out in time for the sake of neatness. - show_comments.lua: This is the script that sends the array of comments available to the JavaScript library, builder.js, which displays comments on the page. It makes (sort of) use of a caching function in comments_cache.lua, which is currently disabled since it's silly, but should at some point be made to work. Any suggestions on how to properly cache comments without ending up with new comments not showing for 10-20 seconds would be greatly appreciated. So, that's about it for now. Lastly, if you're more interested in actually _using_ this system for your project, don't hesitate to either send an email to infra or file a JIRA ticket and you'll get set up as soon as possible. With regards, Daniel. --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org For additional commands, e-mail: general-help@incubator.apache.org