Instantly share code, notes, and snippets.

echo -e "\n --- \n deleting project objects... \n --- \n"
oc project openshift-infra
for i in $(oc get secret | egrep "(hawkular|heapster|metrics)" | awk '{ print $1 }'); \
oc delete secret $i; \
View Event-stream based GraphQL

In this gist I would like to describe an idea for GraphQL subscriptions. It was inspired by conversations about subscriptions in the GraphQL slack channel and different GH issues, like #89 and #411.

Conceptual Model

At the moment GraphQL allows 2 types of queries:

  • query
  • mutation

Reference implementation also adds the third type: subscription. It does not have any semantics yet, so here I would like to propose one possible semantics interpretation and the reasoning behind it.

View app.js
function renderTemp(data) {
var el = document.getElementById('temperature');
el.innerHTML = data.temperature + " °C";
// replace with the endpoint created in your deployment.
var endpoint = 'http://localhost:3000/weather';
fetch(endpoint, { mode: 'cors' })
.then(function (resp) {

Moved to git repository:

NGINX Tuning For Best Performance

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.


PLDT HOME FIBR AN5506-04-FA RP2616 Advanced Settings

By default the PLDT HOME FIBR AN5506-04-FA RP2616 comes only with limited settings.

Hidden from the web interface are the rest of the router's capabilities and advanced settings.

We just need to enter the right url for the settings you're looking for.

We need to be logged in before we can do anything else, use your defined password if you already set the admin password.

View handler.js
import uuid from 'uuid';
import * as dynamoDbLib from '../../libs/dynamodb-lib';
import {
} from '../../libs/response-lib';
const collectionHandlers = {
"GET": listItems,
"POST": createItem,