ProxyMachine

7 层 TCP 路由代理
授权协议 MIT
开发语言 Ruby
所属分类 服务器软件、 代理服务器软件
软件类型 开源软件
地区 不详
投 递 者 益麻雀
操作系统 Linux
开源组织
适用人群 未知
 软件概览

Proxy Machine 是一个简单的 7 层 TCP 路由代理,基于 EventMachine 构建,可使用 Ruby 语言配置路由规则。如果你需要将不同的请求内容转发到后端不同的服务器上,那么 ProxyMachine 非常适合你。

ProxyMachine 主要为 Github 的集群架构而开发,每天可代理几百万请求,性能和内存占用表现良好。

安装:

$ gem install proxymachine -s http://gemcutter.org

使用方法:

Usage:
  proxymachine -c <config file> [-h <host>] [-p <port>]

Options:
  -c, --config CONFIG              Configuration file
  -h, --host HOST                  Hostname to bind. Default 0.0.0.0
  -p, --port PORT                  Port to listen on. Default 5432

示例配置:

class GitRouter
  # Look at the routing table and return the correct address for +name+
  # Returns "<host>:<port>" e.g. "ae8f31c.example.com:9418"
  def self.lookup(name)
    ...
  end
end

# Perform content-aware routing based on the stream data. Here, the
# header information from the Git protocol is parsed to find the 
# username and a lookup routine is run on the name to find the correct
# backend server. If no match can be made yet, do nothing with the
# connection.
proxy do |data|
  if data =~ %r{^....git-upload-pack /([\w\.\-]+)/[\w\.\-]+\000host=\w+\000}
    name = $1
    { :remote => GitRouter.lookup(name) }
  else
    { :noop => true }
  end
end
  • Proxy Machine 是一个简单的 7 层 TCP 路由代理,基于 EventMachine 构建,可使用 Ruby 语言配置路由规则。如果你需要将不同的请求内容转发到后端不同的服务器上,那么 ProxyMachine 非常适合你。 ProxyMachine 主要为 Github 的集群架构而开发,每天可代理几百万请求,性能和内存占用表现良好。 安装: $ gem install proxy

 相关资料
  • 本文向大家介绍Vue三层嵌套路由的示例代码,包括了Vue三层嵌套路由的示例代码的使用技巧和注意事项,需要的朋友参考一下 Vue嵌套路由: 实现效果(路由三层嵌套,点击一级tab显示二级tab效果,二级tab点击切换对应内容,不在tab区域里的内容,切换时不重复渲染): Demo访问时路径:http://IP:端口/#/routers/ 1.建立案例文件夹 page/routers/ 1 route

  • 本文向大家介绍Django 路由层URLconf的实现,包括了Django 路由层URLconf的实现的使用技巧和注意事项,需要的朋友参考一下 分组 分组的目的:让服务端获得url中的具体数据,通过分组,把需要的数据按函数传参的方式传递给服务器后台 1-无名分组 若要从URL 中捕获一个值,只需要在它周围放置一对圆括号 2-有名分组 在更高级的用法中,可以使用命名的正则表达式组来捕获URL 中的值

  • 因此,我尝试使用docker和Nginx根据请求对3个不同的容器进行路由。容器具有相同的IP和不同的端口。以下是Nginx配置: 当我导航到myticket.grgsh.com时,服务器将我重定向到上游的帮助台,但当我导航到myticket.grgsh.com/dsi或myticket.grgsh.com/drh时,我会得到错误: 未找到此服务器上未找到请求的URL。 有人能帮忙解决这个问题吗?谢

  • 问题内容: 我正在尝试开发客户端服务器TCP / IP应用程序。我的PC上运行着一台服务器,移动设备上运行着客户端应用程序。它们都在同一个Wi- Fi网络中,但是我无法在它们之间建立连接。在调试客户端Android应用时,显示以下错误: 我正在使用的代码: 我究竟做错了什么? 问题答案: no route错误表示尝试进行TCP连接时,连接失败,因为基础协议软件找不到到指定目标节点的网络节点到网络节

  • 本文向大家介绍Django路由层URLconf作用及原理解析,包括了Django路由层URLconf作用及原理解析的使用技巧和注意事项,需要的朋友参考一下 一、Django中路由的作用 URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL与要为该URL调用的视图函数之间的映射表。 你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。

  • 使用 vue-router 的路由 你可能已经注意到,我们的服务器代码使用了一个 * 处理程序,它接受任意 URL。这允许我们将访问的 URL 传递到我们的 Vue 应用程序中,然后对客户端和服务器复用相同的路由配置! 为此,建议使用官方提供的 vue-router。我们首先创建一个文件,在其中创建 router。注意,类似于 createApp,我们也需要给每个请求一个新的 router 实例,

  • TCP代理配置概述。 filter.network.TcpProxy filter.network.TcpProxy.DeprecatedV1 filter.network.TcpProxy.DeprecatedV1.TCPRoute filter.network.TcpProxy filter.network.TcpProxy proto { "stat_prefix": "...",

  • TCP代理配置参考 { "name": "tcp_proxy", "config": { "stat_prefix": "...", "route_config": "{...}", "access_log": [] } } route_config (required, object) 过滤器的路由表。所有的过滤器实例都必须有一个路由表,即使它是空的。 st