Permalink
Browse files

rewritten the core of the memory model to greatly improve performance…

… and capacity

 - the score pools are now a binary search tree
 - the linked lists of items are now double-linked and head and tail are kept track of to speed in adding and removal
 - the score pools hold the head and tail of a list
 - this has yeilded a queue that is from 10x - 5000x+ faster...the largest gain coming from very large populated queue
  • Loading branch information...
1 parent fa05d33 commit 1549776a32f7bc38e5190d4fd336569e581f506f Dwayn Matthies committed with Jul 4, 2010
Showing with 5,777 additions and 6,569 deletions.
  1. +160 −72 Makefile.in
  2. +18 −0 README
  3. +1,024 −775 aclocal.m4
  4. +2 −2 bootstrap.sh
  5. +3 −0 config.h.in
  6. +4,330 −4,966 configure
  7. +2 −1 configure.ac
  8. +6 −6 src/Makefile.am
  9. +173 −138 src/Makefile.in
  10. +35 −31 src/barbershop.c
  11. +1 −4 src/barbershop.h
  12. +0 −129 src/bst.c
  13. +0 −47 src/bst.h
  14. +21 −41 src/commands.c
  15. +2 −0 src/commands.h
  16. +0 −294 src/scores.c
  17. +0 −63 src/scores.h
View

Large diffs are not rendered by default.

Oops, something went wrong.
View
18 README
@@ -4,6 +4,24 @@ Barbershop is a fast, lightweight priority queue system. The goal is to
create a dead simple network service with libevent to manage priority
queue.
+# Dependencies
+check >= 0.8.2
+libevent >= 1.4.13
+pkgconfig >= 0.25 (possibly lower versions would work)
+
+# Compilitaion Notes
+
+Normally all that should be needed is to compile:
+./bootstrap.sh
+./configure
+make
+
+If there is issues with libtool versions when running make, you can run:
+libtoolize [or glibtoolize]
+./bootstrap.sh
+./configure
+make
+
# Usage
This application exists to allow priority queue workers to scale out. The
Oops, something went wrong.

0 comments on commit 1549776

Please sign in to comment.