Skip to content

Instantly share code, notes, and snippets.

View mandarjog's full-sized avatar

Mandar U Jog mandarjog

  • Google
  • San Jose, CA
View GitHub Profile
@mandarjog
mandarjog / route_cfg.json
Last active March 25, 2019 19:20
1.1 route config examples
{
"name": "svc01-0.local:80",
"domains": [
"svc01-0.local",
"svc01-0.local:80"
],
"routes": [
{
"match": {
"prefix": "/"
@mandarjog
mandarjog / gist:d83e8e1f2dc8cf8a085dd4c291c81034
Created March 22, 2019 05:27
Espn actively redirecting to non https site
```
$ curl -v https://www.espn.com
* Rebuilt URL to: https://www.espn.com/
* Trying 52.33.100.133...
* TCP_NODELAY set
* Connected to www.espn.com (52.33.100.133) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
@mandarjog
mandarjog / istio-ingressgateway-config.json
Last active March 25, 2019 19:15
istio ingress large config example
This file has been truncated, but you can view the full file.
{
"configs": [
{
"@type": "type.googleapis.com/envoy.admin.v2alpha.BootstrapConfigDump",
"bootstrap": {
"node": {
"id": "router~10.16.42.131~istio-ingressgateway-6db44bd95b-5hrbj.istio-system~istio-system.svc.cluster.local",
"cluster": "istio-ingressgateway",
"metadata": {
"POD_NAME": "istio-ingressgateway-6db44bd95b-5hrbj",
{
"RunType": "HTTP",
"Labels": "5d71950c_qps_2000_c_32_1024_nopol_both",
"StartTime": "2019-02-22T09:12:54.002803656Z",
"RequestedQPS": "2000",
"RequestedDuration": "1m0s",
"ActualQPS": 1999.5091668548246,
"ActualDuration": 60014728609,
"NumThreads": 32,
"Version": "1.3.1",
mjog@devinstance:/mnt/disks/sdb/go/src/istio.io/tools/perf/servicegraph/templates$ wrk -c 1000 -t 30 -d 120 -R 5000 -U http://fortioserver.v11.perf.qualistio.org/echo?size=1024
Running 2m test @ http://fortioserver.v11.perf.qualistio.org/echo?size=1024
30 threads and 1000 connections
Thread calibration: mean lat.: 3.271ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.320ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.414ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.272ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.276ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.168ms, rate sampling interval: 10ms
Thread calibration: mean lat.: 3.198ms, rate sampling interval: 10ms
@mandarjog
mandarjog / gist:d9e8aaec4dac90766390a3cccfba4175
Created November 18, 2018 20:01
mixer_in_envoy memory measurements
Process Size in MB. Resident memory on Mac
36: base proxy
193: smaller mixer+envoy (trimmed down adapters, no k8s)
198: full mixer+envoy
156: mixs binary only, no proxy
58: Envoy + with no-op go extension
@mandarjog
mandarjog / results.yaml
Last active October 3, 2018 14:08
Standard Istio Experiment result format
# experiment summary
# All times in UTC
start_time: "2018-10-03T12:32:06Z"
end_time: "2018-10-03T12:32:12Z"
# multiple experiments with the same setup should have the same exp_group_uuid
exp_group_uuid: "uuid_string"
istio_build: "build"
@mandarjog
mandarjog / prom.py
Created August 16, 2018 19:10
prometheus access thru python
import datetime
import calendar
import requests
import collections
import os
import json
import argparse
class Prom(object):
# url: base url for prometheus
address:
socket_address: { address: $pod_ip, port_value: 8000 }
listener_filters:
- name: "envoy.listener.tls_inspector"
config: {}
filter_chains:
- filter_chain_match:
transport_protocol: "tls"
tls_context:
common_tls_context:
@mandarjog
mandarjog / encode_interface.go
Created April 26, 2018 16:27
performance change
func (f fieldEncoder) Encode(bag attribute.Bag, ba []byte, noInterfaceFieldEncode bool) ([]byte, error) {
ba = append(ba, f.protoKey...)
for i := 0; i < len(f.encoder); i++ {
var err error
if !noInterfaceFieldEncode {
ba, err = f.encoder[i].Encode(bag, ba)
if err != nil {