所以这里是圣人: 负载均衡器(haproxy)交付给3个Web服务器和一个数据库服务器,共5台服务器,并且在Web服务器之间共享Memcache会话。 我可以确认PHPSESSIONID正在Web服务器之间共享,但是当我尝试login时, $_POST不断被重置,并且login的cookie从不设置,导致不断的redirect到login页面。 我已经在haproxy中设置了appsessionid ,而且这个工作正常,但是由于大多数用户都会login,所以它在使用负载均衡器的时候失败了,所以很可能一台服务器会比其他服务器获得更多的stream量。 有没有人遇到这个和任何想法如何解决? 还是我被迫使用粘性会话? 编辑1: 做了更多的研究,并意识到我可以在$_SESSION保存$_POST ,但可能会有一些安全问题。 我的想法是在每个页面的closures操作中将其从会话中清除。 思考? 编辑2: 这里是/etc/haproxy/haproxy.cfg global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s daemon user haproxy group haproxy # Default ciphers to use on SSL-enabled listening sockets. # For more information, see ciphers(1SSL). […]
我想在我创build的3台Apache服务器上设置负载均衡。 我用于服务器的3个地址是192.168.151.101 , .102和.102 然后我创build了一个负载均衡服务器,并给了这个地址192.168.151.105 在负载均衡服务器中,我创build了以下文件并给出了以下configuration $ vi /etc/apache2/conf.d/proxy-balancer <Proxy balancer://mycluster> BalancerMember http://192.168.151.101 BalancerMember http://192.168.151.102 BalancerMember http://192.168.151.103 </Proxy> ProxyPass / balancer://mycluster 然后我需要configuration我们的代理,以允许从所有主机访问: $ vi /etc/apache2/mods-enabled/proxy.conf 然后我在网上阅读,你需要 “把这个文件中的”Deny from all“改为”Allow from all“,然后重新启动Apache:” 但是,我没有一个Deny all行开始,所以我不确定我应该实际上改变,以允许从所有主机访问。 那么有人知道我是否应该改变这个configuration文件,或者有没有人有另一种方法来做负载平衡? 注意:我启用了所有的代理模块
我有三个IIS服务器前面的Microsoft NLB。 哪些configuration在同一个群集上。 NLB本身做的很好,但在IIS日志中,所有请求都来自NLB的IP地址。 使用NLB时,有没有办法将原始源IP传递给IIS?
希望有人能指点我正确的方向。 我没有太多的运气与设置。 这里是场景和相关(嗯,我认为是相关的,但请询问是否需要更多)设置细节。 基于资源pipe理器的部署,即基于ARM。 在此设置中,我没有v1或旧的基于ASM的资源。 一切都在一个资源组中创build。 1区域vNet(例如美国东部的myvNet1) 它有三个子网(例如后端(192.168.1.0/24),MidTier(192.168.2.0/24)和前端(192.168.3.0/24) MidTier子网运行两个虚拟机(例如VM1和VM2) 希望在它们的MidTier中添加一个ILB来平衡HTTPSstream量到这些现有的VM(VM1和VM2) 这两个虚拟机已经有了一个networking接口,那么我怎样才能将ILB创build步骤中创build的那个“现有”networking接口分配/更新/replace? 当我尝试分配为ILB创build的后端networking接口时,它抱怨说; 具有多个networking接口的虚拟机和具有单个networking接口的虚拟机在同一个租户中不受支持,而具有单个networking接口的虚拟机也不能更新为具有多个networking接口,反之亦然。 当我尝试从虚拟机(VM1和VM2)中删除已经分配的networking接口,以便我可以分配ILB时,它不会给我一个解释,说明是否允许,否则稍后再尝试。 。 无法删除networking界面“vm011644”。 错误:处理您的请求时出错。 再试一次。 我所做的所有研究都是从创build一个新子网的概念开始的,有些甚至由虚拟机启动的概念也是作为这个练习的一部分而创build的,但是在现有设置之前放置/放弃ILB(可能我是不仔细看) 欣赏一些这方面的指导; 谢谢, 注意; 我跟随的主要环节是; https://azure.microsoft.com/en-us/documentation/articles/load-balancer-get-started-ilb-arm-ps/ 那么我只是使用Add-AzureRmVMNetworkInterface和update-azurermVM来分配networking接口。
看到CoreOS被devise成运行docker集装箱,我想知道是否有办法将HTTP负载平衡器上的后端服务直接映射到在单个CoreOS实例上运行的Docker Images。 这是我要去的结构: www.example.com/marketing -> docker:marketing-app www.example.com/accounts -> docker:accounts-app www.example.com/ -> docker:www-app … 我知道这可以通过使用Ingress的Kubernetes完成 – 每个Docker容器将被HTTP负载均衡器视为后端服务,这最终将用于生产; 对于我的testing/ qa / demo设置,我正在寻找更简单的东西,一个大的CoreOS实例,运行多个Docker容器,并且具有完全相同的HTTP负载均衡器(稍后将在产品中使用)指向Docker容器CoreOS实例。 CoreOS有这样的function吗? 如果不是,除了启动一个NGINX容器来将HTTP负载均衡器的所有stream量路由到不同的容器之外,还有什么其他select?
我在以下服务器configuration上运行大型ERP系统 。 该应用程序是使用AngularJS和ASP.NET 4.5开发的 Dell PowerEdge R730(四核2.7 Ghz,32 GB RAM,5 x 500 GB硬盘,RAID5configuration)软件:主机操作系统是VMWare ESXi 6.0两个VM在VMWare ESXi上运行..一个是Windows Server 2012 R2,分配有16 GB内存 … 这包含与我的应用程序代码的IIS 8服务器 另一个虚拟机也是Windows Server 2012与SQL Server 2012和16 GB的内存分配….这只是包含我的应用程序数据库。 你看,我分开了应用程序服务器和数据库服务器的负载平衡的目的。 我的应用程序包含一个注册模块,预计负载非常高(10分钟内约有10,000名访问者) 为了支持这样的请求量,我在我的IIS服务器中完成了以下工作 – >将应用程序池长度中的请求队列增加到5000 – >为aspx文件启用输出caching – >在IIS服务器中启用静态和dynamic压缩 – >设置虚拟内存限制每个应用程序池的私有内存限制为0 – >将每个应用程序池的最大工作进程数增加到6个 然后我使用gatling在我的应用程序上运行负载testing。 我立即将500个用户注册到我的注册模块中。 但是,我看到只有40%/ 45%的RAM正在使用。 每个工作进程只使用最多130 MB左右的内存。 而且gatling报告说我的请求中有大约20%出现了403错误,超过60%的HTTP请求的响应时间大于20秒 。 单个用户在大约3分钟的时间内发出380个HTTP请求。 单个用户的总数据传输量为1.5 MB。 我模拟了500个这样的用户。 我的服务器调整有什么缺失吗? […]
假设以下设置:系统(Ubuntu 14.04 LTS),具有40个内核,大量RAM。 另外一个只有部分multithreading的程序。 也就是说,它不断地在多个核心上运行数小时,然后只在一个核心上运行(也是几个小时)。 我想通过并行运行该程序来最大限度地提高该机器的CPU利用率,例如10次,但是我真的想要防止出现 所有10个实例都希望并行运行在全部40个内核上(可怕的caching垃圾) 我告诉每个实例,最多使用4个内核,但是有些情况下,其中9个是单核使用,十分之一可以暂时使用所有内核,但是不能使用,因为它只允许使用4个内核。 问题是:是否有公用事业/操作系统扩展,允许? 使用“renice”并不完全是需要的,尽pipe如果有一个自动的主pipe允许dynamic地renice进程,可能会非常接近。 理想情况下,它可以这样工作:只要一组程序不能最大化给定的CPU资源,就可以获得尽可能多的CPU资源。 但是,如果他们使用更多,那么具有最长运行时间(或其他)的程序将获得CPU的最高优先级,最终会使其他实例挨饿。 我发现的最接近的是控制组(cgexec和朋友),但是从我所知道的只能定义具有固定CPU比率的程序组,例如,组中的程序最多可以使用60%的CPU(即使其他40%是未使用的),并且无法阻止所有进程得到某些东西(再次,垃圾CPUcaching)。
我有一些点对点的 HTTP代理,我需要平均分配我的请求,所以我添加了多个cache_peer指令,并设置循环为对等selectalgorithm。 这是我的configuration: # Basic configuration visible_hostname squid_proxy_1 unique_hostname squid_proxy_1 http_port 3130 pid_filename /vagrant/squid_proxy_1.pid cache deny all http_access allow all # Proxies cache_peer MY_PROXY_HOST parent PROXY_PORT 0 round-robin no-query name=FIRST login=MY_PROXY_LOGIN-1:PASSWORD1 cache_peer MY_PROXY_HOST parent PROXY_PORT 0 round-robin no-query name=SECOND login=MY_PROXY_LOGIN-2:PASSWORD2 cache_peer MY_PROXY_HOST parent PROXY_PORT 0 round-robin no-query name=THIRD login=MY_PROXY_LOGIN-3:PASSWORD3 never_direct allow all 但是我遇到了下面的问题: cache_peer切换不是在每个请求之后。 以下是我的access.log如何: […]
如何,我使用Squid v3.3.8,我需要创buildHTTP旋转代理服务器发送所有请求通过预定义的代理(我自动更新squidconfiguration更新设置的代理服务器)。 我的输出代理不是快速和可靠的,所以我不希望鱿鱼等待,如果他们中的一些不响应快,我更希望其他更好,永远不会回到有问题的。 所以这是我的configuration看起来像 # Basic configuration visible_hostname squid_1 unique_hostname squid_1 http_port 3130 pid_filename /home/vagrant/projects/squid_1.pid dns_v4_first on peer_connect_timeout 3 seconds dead_peer_timeout 3 seconds server_persistent_connections off http_access allow all # Proxies list cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node2447551878 login=login2447551878:PASSWORD cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node3119927090 login=login3119927090:PASSWORD cache_peer PROXY_HOST parent PROXY_PORT […]
我们正在将Windows 2003 IIS 6 Webfarm上的应用程序迁移到Windows 2012上的IIS 8,因为W2K3已经达到了EOS。 我们有一个单独的网站,其中有40个应用程序在Intranet Web场(4个负载均衡服务器)上。 例如 Website1 ->app1 ->app2 -> app3 etc …. – > app40 转换为http:// website1 / app1 , http:// website1 / app2 ….等等 我们分析了所有的应用程序(不同的代码库/configuration,而不是它们之间的相互依赖关系),发现40个中的38个可以在新的平台上进行托pipe,只需要更改configuration,另外2个应用程序由于内部组件的依赖性而需要大量的工作。 我们可以将这38个应用程序迁移到新的2012年服务器,而保留旧服务器上的2个应用程序保留相同的URL。 我们遇到的问题是,因为它在切换到新服务器时有一个虚拟IP,所以我们可能必须全部移动或不移动。 我想获得专家的build议,以缓解这个问题。 我们不希望整个项目的时间表受到危害,因为只有10%的应用程序..请咨询