In Javascript this
is bound in unexpected ways. Functions, in particular, create a new 'this' and so when you want to keep a reference to an "outer" object you sometimes see the pattern:
var self = this;
as in:
var self = this;
#!/usr/bin/env bash | |
# lists all unused AWS security groups. | |
# a group is considered unused if it's not attached to any network interface. | |
# requires aws-cli and jq. | |
# all groups | |
aws ec2 describe-security-groups \ | |
| jq --raw-output '.SecurityGroups[] | [.GroupName, .GroupId] | @tsv' \ | |
| sort > /tmp/sg.all |
#!/bin/bash | |
set -u | |
set -e | |
set -o pipefail | |
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin | |
cat <<'EOF' > /etc/modprobe.d/blacklist-ipv6.conf |
;; I am not a regular emacs user and haven't played with lisp for many years. | |
;; I struggled for a couple of days trying to tweak org-capture-templates to | |
;; get my desired behavior for journal entries. I hope this helps someone! | |
;; | |
;; I have been following the excellent guide http://doc.norang.ca/org-mode.html | |
;; The "journal" template was the one I wanted to tweak. I use a date-based | |
;; journal filename, e.g. "2015-09-22-Journal-Entry.org". The contents of the | |
;; file consist of a top-level headline with a human-friendly date, followed | |
;; by second-level headline with the time and brief journal note. For example: | |
;; |
Use: for testing against email regex | |
ref: http://codefool.tumblr.com/post/15288874550/list-of-valid-and-invalid-email-addresses | |
List of Valid Email Addresses | |
[email protected] | |
[email protected] | |
[email protected] | |
[email protected] |
/* | |
Theme Name: Hemingway Rewritten – WordPress.com | |
Theme URI: http://theme.wordpress.com/themes/hemingway-rewritten/ | |
Description: Description | |
Version: 1.0 | |
Author: Anders Noren | |
Author URI: http://www.andersnoren.se | |
License: GPL v2 or later | |
License URI: http://www.gnu.org/licenses/gpl-2.0.html | |
Text Domain: hemingway-rewritten |
// this is the background code... | |
// listen for our browerAction to be clicked | |
chrome.browserAction.onClicked.addListener(function (tab) { | |
// for the current tab, inject the "inject.js" file & execute it | |
chrome.tabs.executeScript(tab.ib, { | |
file: 'inject.js' | |
}); | |
}); |
For this configuration you can use web server you like, i decided, because i work mostly with it to use nginx.
Generally, properly configured nginx can handle up to 400K to 500K requests per second (clustered), most what i saw is 50K to 80K (non-clustered) requests per second and 30% CPU load, course, this was 2 x Intel Xeon
with HyperThreading enabled, but it can work without problem on slower machines.
You must understand that this config is used in testing environment and not in production so you will need to find a way to implement most of those features best possible for your servers.
When the directory structure of your Node.js application (not library!) has some depth, you end up with a lot of annoying relative paths in your require calls like:
const Article = require('../../../../app/models/article');
Those suck for maintenance and they're ugly.
-- a quick LUA access script for nginx to check IP addresses against an | |
-- `ip_blacklist` set in Redis, and if a match is found send a HTTP 403. | |
-- | |
-- allows for a common blacklist to be shared between a bunch of nginx | |
-- web servers using a remote redis instance. lookups are cached for a | |
-- configurable period of time. | |
-- | |
-- block an ip: | |
-- redis-cli SADD ip_blacklist 10.1.1.1 | |
-- remove an ip: |