我在AWS EC2容器服务中有一个集群.当我设置它时,我使用了t2.micro实例,因为它们足以进行开发.现在我想使用更强大的实例,比如m4.large.
我想知道是否可以仅更改实例类型,因此我不需要重新创建整个集群.我找不到怎么做.
我正在为我的应用程序使用带有应用程序负载均衡器的Amazon Web Services EC2容器服务.当我部署新版本时,我得到503服务暂时不可用大约2分钟.它比我的应用程序的启动时间多一点.这意味着我现在无法进行零停机部署.
是否有设置在启动时不使用新任务?或者我在这里缺少什么?
更新:
ALB的目标组的运行状况检查编号如下:
Healthy threshold: 5
Unhealthy threshold: 2
Timeout: 5 seconds
Interval: 30 seconds
Success codes: 200 OK
Run Code Online (Sandbox Code Playgroud)
健康阈值是'在考虑不健康目标健康之前所需的连续健康检查成功次数'
不健康阈值是'在考虑目标不健康之前所需的连续健康检查失败次数'.
超时是'没有响应意味着健康检查失败的时间量,以秒为单位.'
间隔是'单个目标的健康检查之间的大致时间'
更新2:所以,我的集群由两个EC2实例组成,但如果需要可以扩展.所需和最小计数为2.我为每个实例运行一个任务,因为我的应用程序需要特定的端口号.在我部署之前(jenkins运行aws cli脚本)我将实例数设置为4.如果没有这个,AWS就无法部署我的新任务(这是另一个需要解决的问题).网络模式是桥梁.
amazon-web-services amazon-ecs http-status-code-503 amazon-elb
我有一个Ionic混合移动应用程序。经过最近的构建后,我注意到我的应用在启动后无缘无故进入全屏显示(状态栏可见)。第一个视图是Google Map,加载后为ionic.Platform.fullScreen(false,true); 叫做。这是因为,如果用户第一次打开该应用程序,则会显示一个全屏介绍,然后该用户将导航到该地图,而不应该是全屏。如果发生这种转换(打开了简介),则一切都很好,但是如果用户第二次以上打开了应用程序(没有简介),则地图会全屏显示状态栏,因此标题的一半被覆盖了。
这仅在Android上发生。我最近升级了Cordova CLI版本,cordova-andoid版本(由于缺少启动画面错误)以及Linux版本。从cordova尝试了很多:6.0.0、6.4.0、6.5.0;cordova-android:6.0.0、6.2.1、6.2.2、6.2.3
首先,我认为它与构建位置有关,但是现在事实证明,这并不完全正确。
当前设置:
Cordova CLI: 6.0.0
Gulp version: CLI version 3.9.1
Gulp local: Local version 3.9.1
Ionic Framework Version: 1.3.0
Ionic CLI Version: 1.7.16
Ionic App Lib Version: 0.7.3
OS: Distributor ID: Ubuntu Description: Ubuntu 17.04
Node Version: v4.4.0
Run Code Online (Sandbox Code Playgroud)
很感谢任何形式的帮助!
更新:我的config.xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.myapp" version="0.8.2" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>MyApp</name>
<description>
My desc.
</description>
<author email="developers@me.com" href="http://myapp.com/">
MyApp Co.
</author>
<content src="index.html" />
<access origin="*" />
<access launch-external="yes" origin="tel:*" />
<allow-intent href="tel:*" />
<plugin name="Geolocation" value="CDVLocation" …Run Code Online (Sandbox Code Playgroud) 我有一个名为 Booking 的实体,它有一个生成的 id 字段,用作主键。它工作正常。我想添加另一个字段 uuid,我将在 REST API 中将其用作资源标识符。我有一个 Postgres 数据库并将该字段设置为自动生成:
uuid character varying(36) not null default uuid_generate_v1mc()
Run Code Online (Sandbox Code Playgroud)
创建时,DB 生成 id 和 uuid 就好了,但在 Java 代码中,uuid 字段为空。我的实体看起来像这样:
@Entity
public class Booking {
@Id
@SequenceGenerator(name="booking_id_seq", sequenceName="booking_id_seq", allocationSize=1)
@GeneratedValue(strategy= GenerationType.IDENTITY, generator = "booking_id_seq")
private Long id;
@Column(nullable = false)
private String uuid;
(...)
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
跟进:谢谢大家的评论和回答。看起来我有两个选择,要么从 DB 重新加载实体以让 DB 生成 uuid,要么在代码中自己生成。哪一个是首选?我猜后者的性能更高,但还有什么需要考虑的吗?
我尝试从资源文件夹中读取文件。问题是,在 Windows 上File.separator变成了“ %"。
String inputFilesFolder = "input_files" + File.separator;
File file = new File(classLoader.getResource(inputFilesFolder + "filename").getFile());
Run Code Online (Sandbox Code Playgroud)
将inputFilesFolder仍然是罚款(input_files/),但在创建文件之后file.getPath()变得D:\blabla\input_files%filename。
然后我尝试读取文件,但我收到 FileNotFoundException(大惊喜)。这里有什么问题?
amazon-ecs ×2
java ×2
amazon-elb ×1
cordova ×1
file ×1
hibernate ×1
jpa ×1
postgresql ×1
spring ×1
windows ×1