The Future of NGINX and NGINX Plus

2016-02-02 KENNETH 0

The following is adapted from a presentation given by Owen Garrett at nginx.conf 2015, held in San Francisco in September. You can view the video of the talk here. Table of Contents 0:00 Introduction 0:30 Massive Pace of Development in 2015 3:55 Why the Top Sites Choose NGINX 4:58 Building a Great Application… 12:30 nginScript 13:30 Announcing Dynamic Modules 18:00 NGINX Amplify 0:00 Introduction 2015 has been a really, really big year for NGINX. As Gus said in his keynote presentation, the company has grown, our user base has grown, and the number of customers using our software, taking advantage of our services continues to grow. But what I want to talk to you more about is how the product has changed. 0:30 Massive Pace of Development in 2015 Many of you track us on Mercurial, our source control system. [ more… ]

No Image

그누보드 짧은 주소 작성 (nginx)

2016-02-01 KENNETH 0

그누보드 짧은 주소 작성 하기 in nginx   그누보드의 기본 주소 정책은 https://jirak.net/bbs/board.php?bo_table=게시판테이블명&wr_id=게시물고유번호 형태인데.. https://jirak.net/bbs/게시판테이블명/게시물고유번호 처럼 짧은 주소.. 내지는 원하는 형태의 주소로 만들어 주는 간단한 예제임 아래를 참고할것 location / { rewrite ^/login$ /bbs/login.php; rewrite ^/register$ /bbs/register.php; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)/([0-9]+)$ /bbs/board.php?bo_table=jiraknet_$1&wr_id=$2; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)/([0-9]+)/$ http://jirak.net/jiraknet_$1/$2 permanent; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)$ /bbs/board.php?bo_table=jiraknet_$1; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)/$ /bbs/board.php?bo_table=jiraknet_$1; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)?page=$ /bbs/board.php?bo_table=jiraknet_$1&page=$2; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)/([0-9]+).html$ /bbs/board.php?bo_table=jiraknet_$1&wr_id=$2; rewrite ^/(jiraknet_[a-zA-Z0-9_]+)/([0-9]+).nhn$ /bbs/board.php?bo_table=jiraknet_$1&wr_id=$2; }   rewrite 룰중.. ”jiraknet_” 으로 시작하는것이 의아스러울 것이다. 이것은 게시판생성시(즉 테이블 생성시) 지정하는 이름의 ”규칙” 이다. 만일 저것이 없다면.. 도메인 뒤에오는 모든 uri 에 대해 처리를 해버리기 때문에 그누보드의 게시판명이 아닌.. 일반적인 디렉토리 접근이 같이 영향권에 들어가서 제대로 접근이 되지 않을 것이다.   이때문에… 조건은 그누보드의 게시판명에 대한 uri 를 주는 것이다. 직접 설정해서 차이를 경험해 보시는게 좋을듯….

Cache Placement Strategies for NGINX and NGINX Plus

2016-01-28 KENNETH 0

table.blog { border-collapse: collapse; } table.blog td { border: 1px solid black; padding: 5px; } In the previous article in this caching series, we looked at the benefits of microcaching – caching dynamic content for very short periods of time – which sometimes leads to very significant performance improvement. In this article, we’ll consider another aspect of caching, that of cache placement, and we’ll look at strategies for dealing with slow cache storage. Selecting a Cache Location NGINX can manage multiple cache locations, each mapped to a different filesystem location, and you can configure NGINX to choose which cache to use on a per-request basis. In the following sample configuration, the proxy_cache_path directives create two caches, ssd_cache and disk_cache, mounted on the local directories /mnt/ssd/cache and /mnt/disk/cache respectively. The map directive inspects the request URL and selects disk_cache for all requests that appear to [ more… ]

No Image

Service Discovery with NGINX Plus and Consul

2016-01-27 KENNETH 0

Service discovery is a key component of most distributed systems and service-oriented or microservices architectures. Because service instances have dynamically assigned network locations which can change over time due to autoscaling, failures, or upgrades, clients need a sophisticated service discovery mechanism for tracking the current network location of a service instance. This blog post describes how to dynamically add or remove load-balanced servers that are registered with Consul, a popular tool for service discovery. The solution uses NGINX Plus’ on-the-fly reconfiguration API, which eliminates the need to reload NGINX Plus configuration file when changing the set of load-balanced servers. With NGINX Plus Release 8 (R8), changes you make with the API now persist across restarts and configuration reloads. Consul, developed by HashiCorp, is most widely used for discovering and configuring services in your infrastructure. It also provides failure detection (health checking), a [ more… ]

Smart and Efficient Byte-Range Caching with NGINX & NGINX Plus

2016-01-22 KENNETH 0

When correctly deployed, caching is one of the quickest ways to accelerate web content. Not only does caching place content closer to the end user (thus reducing latency), it also reduces the number of requests to the upstream origin server, resulting in greater capacity and lower bandwidth costs. The availability of globally-distributed cloud platforms like AWS and DNS-based global load balancing systems such as Route53 make it possible to create your own global content delivery network (CDN). In this article, we’ll look at how NGINX can cache and deliver traffic that is accessed using byte-range requests. A common use case is HTML5 MP4 video, where requests use byte ranges to implement trick-play (skip and seek) video. Our goal is to implement a caching solution for video delivery that minimizes user latency and upstream network traffic. Our Test Framework We need [ more… ]