Skip to content

Instantly share code, notes, and snippets.

Avatar

Shrikrishna Holla shrikrishnaholla

View GitHub Profile
@konklone
konklone / problem-solving.md
Last active Mar 16, 2016
Problem solving high memory usage with node.js, websockets, socket.io, and redis.
View problem-solving.md

Problem: My Node.js processes (drones on Nodejitsu) are repeatedly growing in memory until they crash and get restarted. They are multiple processes responding to websockets connections over socket.io, using socket.io's Redis store to broker messages across connections and broadcast messages.

Conclusion: that socket.io's Redis store's memory usage likely either grows indefinitely, or is just way too high. We also isolated semi-frequent reconnects to the redis client on the part of each node.js process, though this looks unrelated to the overall memory problem.

Possibly related: https://github.com/LearnBoost/socket.io/issues/1040 https://github.com/LearnBoost/socket.io/issues/463

=== edited chat log of #nodejitsu on 25/11/2012 follows ==

@gurudeb
gurudeb / bootstrap-3-right-offset.css
Created Aug 11, 2016
Bootstrap 3 offset on right
View bootstrap-3-right-offset.css
.col-xs-offset-right-12 {
margin-right: 100%;
}
.col-xs-offset-right-11 {
margin-right: 91.66666667%;
}
.col-xs-offset-right-10 {
margin-right: 83.33333333%;
}
.col-xs-offset-right-9 {
View promise-abort.js
var DIR = '/tmp/test',
FILE_PATTERN = /test/,
fs = require('q-io/fs');
fs.list(DIR)
.then(function (files) {
var matched = files.filter(function (item) {
return item.match(FILE_PATTERN);
});
if (matched.length !== 1) {
@sent-hil
sent-hil / pictures.markdown
Created Aug 24, 2012
River (getriver.com): Keep a programming journal.
View pictures.markdown

One of my favorite past times is to look at the notebooks of famous scientists. Da Vinci's notebook is well known, but there plenty others. Worshipping Da Vinci like no other, I bought a Think/Create/Record journal, used it mostly to keep jot down random thoughts and take notes. This was great in the beginning, but the conformity of lines drove me nuts. Only moleskines made blank notebooks, so I had to buy one.

At the same time I started a freelance project. The project itself is irrelevant, but suffice to say it was very complex and spanned several months. It seemed like a perfect opportunity to use the moleskine. Looking back, all my entries fell under few categories:

  • Todo
  • Question
  • Thought
  • Bug
  • Feature
@wkjagt
wkjagt / audio-book-reader.md
Last active Jun 28, 2020
How I built an audio book reader for my nearly blind grandfather
View audio-book-reader.md

#How I built an audio book reader for my nearly blind grandfather

Tweet this - Follow me

Last year, when visiting my family back home in Holland, I also stopped by my grand-parents. My grand-father, now 93 years old, had always been a very active man. However, during the presceding couple of months, he'd gone almost completely blind and now spent his days sitting in a chair. Trying to think of something for him to do, I suggested he try out audio books. After finally convincing him -- he said audio books were for sad old people -- that listening to a well performed recording is actually a wonderful experience, I realized the problem of this idea.

####The problem with audio devices and the newly blind. After my first impulse to jump up and go buy him an

@aquilax
aquilax / gist:1333830
Created Nov 2, 2011
Naive Bayes classifier in PostgreSQL
View gist:1333830
--
-- PostgreSQL database dump
--
-- Dumped from database version 9.1.1
-- Dumped by pg_dump version 9.1.1
-- Started on 2011-11-02 16:53:36 EET
SET statement_timeout = 0;
SET client_encoding = 'UTF8';
@tanaikech
tanaikech / submit.md
Last active Jul 26, 2020
Benchmark: Loop for Array Processing using Google Apps Script with V8
View submit.md

Benchmark: Loop for Array Processing using Google Apps Script with V8

- February 9, 2020 - Published. - March 15, 2020 - Results of "for of" and "for of with iterator" were added.
@Vovan-VE
Vovan-VE / fix-lists.js
Created Jun 20, 2019
Quill Lists Fix (redux ready)
View fix-lists.js
/*
* Quill 1.* cannot next block elements inside <li> including nested <ul>,<ol>.
* To achieve nested lists it uses flat linear lists with CSS class `ql-indent-\d+` on <li>.
* Nesting <ul> inside <ol> or vice-versa cause topmost list to break in two adjacent lists.
*
* There is the only solution: fix bad HTML after getting it from Quill and break it back before
* passing to Quill again for editing.
*/
const mkNode = (tagName = 'div') => document.createElement(tagName);
@rauchg
rauchg / README.md
Last active Feb 19, 2021
require-from-twitter
View README.md
@m-ou-se
m-ou-se / replace-debian-with-arch.txt
Last active May 19, 2021
Instructions to replace a live Debian installation with Arch
View replace-debian-with-arch.txt
# Download latest archlinux bootstrap package, see https://www.archlinux.org/download/
wget 'ftp://ftp.nluug.nl/pub/os/Linux/distr/archlinux/iso/latest/archlinux-bootstrap-*-x86_64.tar.gz'
# Make sure you'll have enough entropy for pacman-key later.
apt-get install haveged
# Install the arch bootstrap image in a tmpfs.
mount -t tmpfs none /mnt
cd /mnt
tar xvf ~/archlinux-bootstrap-*-x86_64.tar.gz --strip-components=1