Discussion

Hello and welcome!

This is the main discussion thread for Büchse. Please post your questions and suggestions here.

This project was initially planned for personal use, but I changed my mind and now it's open source!
The 0.1 release is still in the making. It was planned for Aug 1, but I had to take some contract work, and haven't made any progress this month. I do plan to resume work early next week and push for early September release.

The repo is available at github.com/staslisetsky/buchse you're welcome to clone it and explore the code. But please hold off the pitchforks and torches, because it's not even alpha technically.

Still, I welcome all suggestions, advice and ideas on how to make the project better.

I'm really excited, and I thank the Handmade Network staff for accepting this project.
I'll see you in September when I officially announce the 0.1 release, that will (hopefully) be actually stable and usable.

Until then, bye-bye and have a good day!

- Stas

Edited by Stas Lisetsky on Reason: Initial post
I would strongly suggest to not do "game-loop" for web servers. Do epoll or io completion ports - something that waits on sockets. Don't do polling.
Yes, it's very tempting to do a game-style loop. I really wanted to keep this thing single-threaded, at least for the time being. And I couldn't use blocking sockets, because I have to do maintenance tasks every now and then. I agree that what I did is a bit lazy, and I will probably change that soon. Thanks!

Edited by Stas Lisetsky on
You still can have single thread with blocking or nonblocking APIs. Just don't do polling. Check if something is avialable with timeout. If it is - process it, if not, do your maintenance and then go back to sleep. Adding multithreading can come later. "Good" example for this is node.js - all their event loop for processing sockets and file i/o is single threaded (from libuv) but they still use efficient primitives like epoll and io completion ports.

Edited by Mārtiņš Možeiko on
Thank you, I will look into that! I just was getting annoyed with sockets and wanted the app to work already :)
But I do hope to develop the fcgi libs into something reasonable.
Love this idea. I've thought about trying it myself, but I don't have the low-level programming experience yet. I saw part of your blog post in the 3rd screenshot but couldn't find the real thing to read more. :)
@winnythefoo Oh, it's just a placeholder to test the blog, not an actual post that exists anywhere. But I do eventually plan to do a post series on my UI system. Just have to finish the blog engine first =)

Edited by Stas Lisetsky on