I've been trying to understand how to setup systems from
the ground up on Ubuntu. I just installed redis
onto
the box and here's how I did it and some things to look
out for.
To install:
''' | |
Short URL Generator | |
=================== | |
Python implementation for generating Tiny URL- and bit.ly-like URLs. | |
A bit-shuffling approach is used to avoid generating consecutive, predictable | |
URLs. However, the algorithm is deterministic and will guarantee that no | |
collisions will occur. |
{ | |
"loc": "", | |
"youliked": false, | |
"title": "", | |
"deleted": false, | |
"text": "Nature", | |
"created_at": "2015-08-02 20:28:42", | |
"views": 0, | |
"media_thumb": "https://hostname/static/files/videos/2015/08/02/wToYREIrwhtnDdZtpgVQVRJjhIKvje.jpg", | |
"order": 101, |
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND | |
root 1 0.0 0.2 24320 1048 ? Ss May04 10:53 /sbin/init | |
root 2 0.0 0.0 0 0 ? S May04 0:00 [kthreadd] | |
root 3 0.0 0.0 0 0 ? S May04 111:37 [ksoftirqd/0] | |
root 5 0.0 0.0 0 0 ? S< May04 0:00 [kworker/0:0H] | |
root 6 0.0 0.0 0 0 ? S May04 0:00 [kworker/u:0] | |
root 7 0.0 0.0 0 0 ? S< May04 0:00 [kworker/u:0H] | |
root 8 0.0 0.0 0 0 ? S May04 0:00 [migration/0] | |
root 9 0.0 0.0 0 0 ? S May04 0:00 [rcu_bh] | |
root 10 0.0 0.0 0 0 ? S May04 107:26 [rcu_sched] |
# probably ripped off from somewhere on drupal.org | |
# requires the services module | |
import xmlrpclib | |
s = xmlrpclib.ServerProxy('http://localhost/services/xmlrpc') | |
class DrupalNode: | |
def __init__(self, title, body, path, ntype='page', uid=1, username='mmatienzo'): | |
self.title = title |
#! /usr/bin/python | |
import xmlrpclib, pprint | |
class DrupalNode: | |
def __init__(self, title, body, ntype='article', uid=1, username ='admin'): | |
self.title = title | |
self.body = body | |
self.type = ntype |
function write($path, $content, $mode="w+") | |
{ if (file_exists($path) && !is_writeable($path)){ return false; } if ($fp = fopen($path, $mode)){ fwrite($fp, $content); fclose($fp); } else { return false; } return true; } |
""" | |
This is a simple example of WebSocket + Tornado + Redis Pub/Sub usage. | |
Do not forget to replace YOURSERVER by the correct value. | |
Keep in mind that you need the *very latest* version of your web browser. | |
You also need to add Jacob Kristhammar's websocket implementation to Tornado: | |
Grab it here: | |
http://gist.github.com/526746 | |
Or clone my fork of Tornado with websocket included: | |
http://github.com/pelletier/tornado | |
Oh and the Pub/Sub protocol is only available in Redis 2.0.0: |
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<dict> | |
<key>Label</key> | |
<string>redis-server</string> | |
<key>ProgramArguments</key> | |
<array> | |
<string>/opt/local/bin/redis-server</string> | |
</array> |