我的公司在相当性能的关键path上使用redis。 每个请求一个nginx服务器调用一次。 调用本身有几个参数,目前它们是80字节。 这个调用通过networking发送到redis,它将args传递给它已经加载的lua脚本,然后做出决定并返回它。 我的老板认为,为这些参数添加一个额外的32字节的string是相当难以接受的lua脚本中的string硬编码(这是因为其他原因),因为“如果我们在一秒钟内获得50k的请求,这是1.6GB的额外的networking那秒的交通“。 我的直觉是这不是一个问题。 stream量是从一个EC2实例到一个ElastiCache实例,我认为由于数据包是如何工作的,以及请求已经是多less,那么这32个额外的字节在两端的networking堆栈中都不太可能产生显着的处理成本。 我完全错了吗?
我一直Lack of free swap space on Zabbix server监控在我的aws实例Lack of free swap space on Zabbix server得到这个Lack of free swap space on Zabbix server上Lack of free swap space on Zabbix server 。 我正在考虑创build交换空间的2Gb。 因为它是一个活的服务器(正在使用),所以我有可能会丢失或干扰任何事情。 我发现了一些我打算使用的步骤,如下所示: sudo dd if = / dev / zero of = / var / swapfile bs = 1M count = 2048 sudo chmod […]
我使用自定义域在AWS ELB上托pipe了一个基于Java的,基于JAR的小型Web应用程序。 我上传一个ZIP文件,如: myapp.zip * myapp.jar 我使用AWS CMconfiguration了一个证书,并能够通过http://www.example.com和https://www.example.com访问我的应用程序。 现在我需要总是 强制使用 HTTPS。 我完全失去了如何做到这一点。 我看到了许多答案,如“configuration你的nginx”: https://stackoverflow.com/questions/24603620/redirecting-ec2-elb-from-http-to-https https://aws.amazon.com/de/premiumsupport/knowledge-center/redirect-http-https-elb / http://www.emind.co/how-to/how-to-force-https-behind-aws-elb/ 其他答案都是一致的。 虽然我可以理解重写规则的想法,例如: if ($http_x_forwarded_proto = 'http') { return 301 https://www.example.com$request_uri; } 我所缺less的是如何实际添加这个AWS ELB nginx。 我上次尝试的是将.ebextensions\nginx\conf.d\my.conf到我的ZIP压缩文件中: myapp.zip * myapp.jar * .ebextensions * nginx * conf.d * my.conf 内容: if ($http_x_forwarded_proto = 'http') { return 301 https://www.example.com$request_uri; } 这给了我以下错误: 2016/12/24 […]
我想知道是否可以在连接到RDS服务器时确定MySQL命令行中的实例types和存储空间。 我有一个项目,当我从查询专用开发服务器的MySQL数据库切换到客户端的AWS RDS实例(位于与托pipeWeb应用程序的EC2实例相同的可用区域)时,数据库效率就会大大降低。 不同之处在于,EC2实例在北美,开发服务器在南非,尽pipe遍历大西洋,RDS实例在密集查询中仍然大约慢了55%。 由于基础架构由第三方pipe理的托pipe服务提供商托pipe,因此我无法直接询问服务提供商已经部署了哪种实例types。 我拥有的唯一访问权限是基本授予,创build,select,更新,插入。 我无法访问AWSpipe理控制台。 假设这是可能的,有人可以请给我一些指导什么命令(S)运行来确定这一点?
aws商店autoback的我的服务器? 我可以得到备份我的系统之前或恢复我的实例上周或2-3天回来状态? 我的aws服务器被黑了,数据库中没有可用的数据。 所以,如果我能恢复它,那对我来说是很大的帮助。
我pipe理用于移动应用程序启动的AWS托pipe的后端,历史上我们在RDS上的生产MariaDB实例上的InnoDB表中存储了应用程序日志数据(即原始API请求)。 这个日志数据不被我们的应用程序使用; 我们只使用它进行debugging和统计,并且我们每隔1-2天就截断一次表。 随着我们的活动的增长,我发现这个效率越来越低,因为我们的prod数据库被logging查询所打击,日志表从一天的10万行变成了2M +。 以这种方式存储日志(最好使用AWS)的最佳方式是保持可search的方式?
我的问题很容易通过SSH连接到没有公共IP(即数据库实例,networking实例等)的EC2实例。 我发现可以使用iptables PREROUTING链来转发基于服务器上的传入端口与公共IP的SSHstream量。 所以我想我可以使用我的负载平衡器来转发我的私有实例的SSH。 然而,这似乎是一个相当大的安全漏洞,因为我的私人实例现在已经可能暴露给基于SSH的攻击。 有没有其他方法可以方便地通过私有IP地址进入EC2实例?
我有一台生产机器(c4.2xlarge),工作正常。 但是,当我做到以下几点: 在机器运行时拍摄根卷的快照(我知道,build议不要这样做,但这对我来说工作正常) 从快照创build一个卷 将新创build的卷作为根设备(/ dev / sda1)连接到预生产机器(c4.xlarge) 启动预生产机器 新开始的机器初始响应非常缓慢 。 当我继续在机器上工作时,速度开始改善,直到几个小时后,它的响应性与我更换根音量之前一样。 为什么发生这种情况? 直观地看,这似乎是一个caching问题,就好像机器需要“预热”,然后才能按预期执行。 但是这对我来说并没有什么意义,因为我所做的只是取代机器的根音量。
是否有一个amazon web services将翻译端口,如8001端口80端口? 我喜欢在单个静态IP地址后面托pipe多个网站,并且使用端口转发将不同端口路由到我的防火墙后面的各种networking服务器,后者进行端口转发。 如果我可以在AWS服务的某个地方实现这样的表,那将会很好: 客户端请求mydomain.com:80 – > AWS Route 53转换为123.123.123.123:8001 – >我的防火墙端口将8001转发到LAN内的Web服务器。 如果AWS不提供这项服务,那么还有另外一个开箱即用的解决scheme吗? 我可以编写自己的应用程序来执行此操作,并在EC2实例上运行它,但是如果可用的话,我更愿意使用现有的工具。
我最近设置了一个AWS Elasticsearch Domain,但是我没有看到阻止它的方法(就像你可以使用一个EC2实例一样),这意味着我不断被计费。 在这个阶段,我只需要做一些testing,而不需要一个全职的集群。 我看到的唯一select是删除域名,我错过了什么?