Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
3b5011f6
Commit
3b5011f6
authored
Oct 09, 2022
by
tangwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加redis 集群,es 分片
parent
3120e68a
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
443 additions
and
50 deletions
+443
-50
ESOrgUsrDto.java
.../yeejoin/amos/boot/module/common/api/dto/ESOrgUsrDto.java
+1
-1
ESAlertCalled.java
...eejoin/amos/boot/module/jcs/api/entity/ESAlertCalled.java
+1
-1
ESCar.java
...va/com/yeejoin/amos/boot/module/jcs/api/entity/ESCar.java
+1
-1
ESDocEntity.java
...ejoin/amos/knowledgebase/face/orm/entity/ESDocEntity.java
+1
-1
ESTagEntity.java
...ejoin/amos/knowledgebase/face/orm/entity/ESTagEntity.java
+1
-1
RedisClusterConfig.java
...va/com/yeejoin/equipmanage/config/RedisClusterConfig.java
+43
-0
ElasticSearchClientConfig.java
...boot/module/jcs/biz/config/ElasticSearchClientConfig.java
+21
-6
RedisClusterConfig.java
...n/amos/boot/module/jcs/biz/config/RedisClusterConfig.java
+43
-0
ElasticSearchClientConfig.java
.../amos/knowledgebase/config/ElasticSearchClientConfig.java
+22
-6
RedisClusterConfig.java
...yeejoin/amos/knowledgebase/config/RedisClusterConfig.java
+43
-0
pom.xml
...boot-module-biz/amos-boot-module-latentdanger-biz/pom.xml
+5
-0
RedisClusterConfig.java
.../yeejoin/amos/latentdanger/config/RedisClusterConfig.java
+43
-0
pom.xml
...-boot-module-biz/amos-boot-module-maintenance-biz/pom.xml
+5
-0
RedisClusterConfig.java
...m/yeejoin/amos/maintenance/config/RedisClusterConfig.java
+43
-0
pom.xml
.../amos-boot-module-biz/amos-boot-module-patrol-biz/pom.xml
+5
-0
RedisClusterConfig.java
...va/com/yeejoin/amos/patrol/config/RedisClusterConfig.java
+43
-0
pom.xml
...-boot-module-biz/amos-boot-module-supervision-biz/pom.xml
+5
-0
RedisClusterConfig.java
...m/yeejoin/amos/supervision/config/RedisClusterConfig.java
+43
-0
application-dev.properties
...-system-jcs/src/main/resources/application-dev.properties
+5
-4
application-dev.properties
...owledgebase/src/main/resources/application-dev.properties
+7
-6
ESAlertCalled.java
...eejoin/amos/boot/module/tzs/api/entity/ESAlertCalled.java
+1
-1
EsCylinder.java
...m/yeejoin/amos/boot/module/tzs/api/entity/EsCylinder.java
+1
-1
EsElevator.java
...m/yeejoin/amos/boot/module/tzs/api/entity/EsElevator.java
+1
-1
ElasticSearchClientConfig.java
...boot/module/tzs/biz/config/ElasticSearchClientConfig.java
+23
-6
JpushApplication.java
...push/src/main/java/com/yeejoin/amos/JpushApplication.java
+1
-1
WebSecurityConfig.java
...java/com/yeejoin/amos/jpush/config/WebSecurityConfig.java
+6
-0
ElasticSearchClientConfig.java
.../yeejoin/amos/video/config/ElasticSearchClientConfig.java
+22
-7
EsVideoOriginal.java
...n/java/com/yeejoin/amos/video/entity/EsVideoOriginal.java
+1
-1
application-dev.properties
...utils-video/src/main/resources/application-dev.properties
+5
-4
pom.xml
pom.xml
+1
-1
No files found.
amos-boot-module/amos-boot-module-api/amos-boot-module-common-api/src/main/java/com/yeejoin/amos/boot/module/common/api/dto/ESOrgUsrDto.java
View file @
3b5011f6
...
...
@@ -14,7 +14,7 @@ import org.springframework.data.elasticsearch.annotations.Mapping;
*
*/
@Data
@Document
(
indexName
=
"org"
,
type
=
"_doc"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"org"
,
type
=
"_doc"
,
shards
=
3
,
replicas
=
1
)
public
class
ESOrgUsrDto
{
/**部门主键 */
...
...
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/entity/ESAlertCalled.java
View file @
3b5011f6
...
...
@@ -21,7 +21,7 @@ import java.util.Date;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"jcs"
,
type
=
"alertCalled"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"jcs"
,
type
=
"alertCalled"
,
shards
=
3
,
replicas
=
1
)
public
class
ESAlertCalled
{
/** 主键 */
...
...
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/entity/ESCar.java
View file @
3b5011f6
...
...
@@ -16,7 +16,7 @@ import org.springframework.data.elasticsearch.annotations.FieldType;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"jcs"
,
type
=
"car"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"jcs"
,
type
=
"car"
,
shards
=
3
,
replicas
=
1
)
public
class
ESCar
{
@Id
private
String
id
;
...
...
amos-boot-module/amos-boot-module-api/amos-boot-module-knowledgebase-api/src/main/java/com/yeejoin/amos/knowledgebase/face/orm/entity/ESDocEntity.java
View file @
3b5011f6
...
...
@@ -13,7 +13,7 @@ import java.util.List;
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"knowledgebase"
,
type
=
"doc"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"knowledgebase"
,
type
=
"doc"
,
shards
=
3
,
replicas
=
1
)
public
class
ESDocEntity
{
/** 主键 */
...
...
amos-boot-module/amos-boot-module-api/amos-boot-module-knowledgebase-api/src/main/java/com/yeejoin/amos/knowledgebase/face/orm/entity/ESTagEntity.java
View file @
3b5011f6
...
...
@@ -10,7 +10,7 @@ import org.springframework.data.elasticsearch.annotations.Parent;
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"knowledgebase"
,
type
=
"tag"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"knowledgebase"
,
type
=
"tag"
,
shards
=
3
,
replicas
=
1
)
public
class
ESTagEntity
{
/** 主键 */
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
equipmanage
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/config/ElasticSearchClientConfig.java
View file @
3b5011f6
...
...
@@ -36,12 +36,27 @@ public class ElasticSearchClientConfig {
credentialsProvider
.
setCredentials
(
AuthScope
.
ANY
,
new
UsernamePasswordCredentials
(
username
,
password
));
try
{
String
url
=
uris
.
replace
(
"http://"
,
""
);
final
String
[]
parts
=
StringUtils
.
split
(
url
,
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHost
);
builder
.
setHttpClientConfigCallback
(
httpClientBuilder
->
{
String
url
=
uris
.
replace
(
"http://"
,
""
);
String
[]
urls
=
url
.
split
(
","
);
HttpHost
[]
httpHosts
=
new
HttpHost
[
urls
.
length
];
try
{
// String url = uris.replace("http://", "");
// final String[] parts = StringUtils.split(url, ":");
// HttpHost httpHost = new HttpHost(parts[0], Integer.parseInt(parts[1]), "http");
// RestClientBuilder builder = RestClient.builder(httpHost);
for
(
int
i
=
0
;
i
<
urls
.
length
;
i
++)
{
final
String
[]
parts
=
StringUtils
.
split
(
urls
[
i
],
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
httpHosts
[
i
]=
httpHost
;
}
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHosts
);
builder
.
setHttpClientConfigCallback
(
httpClientBuilder
->
{
httpClientBuilder
.
disableAuthCaching
();
return
httpClientBuilder
.
setDefaultCredentialsProvider
(
credentialsProvider
);
});
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-knowledgebase-biz/src/main/java/com/yeejoin/amos/knowledgebase/config/ElasticSearchClientConfig.java
View file @
3b5011f6
...
...
@@ -33,12 +33,28 @@ public class ElasticSearchClientConfig {
final
CredentialsProvider
credentialsProvider
=
new
BasicCredentialsProvider
();
credentialsProvider
.
setCredentials
(
AuthScope
.
ANY
,
new
UsernamePasswordCredentials
(
username
,
password
));
try
{
String
url
=
uris
.
replace
(
"http://"
,
""
);
final
String
[]
parts
=
StringUtils
.
split
(
url
,
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHost
);
String
url
=
uris
.
replace
(
"http://"
,
""
);
String
[]
urls
=
url
.
split
(
","
);
HttpHost
[]
httpHosts
=
new
HttpHost
[
urls
.
length
];
try
{
// String url = uris.replace("http://", "");
// final String[] parts = StringUtils.split(url, ":");
// HttpHost httpHost = new HttpHost(parts[0], Integer.parseInt(parts[1]), "http");
// RestClientBuilder builder = RestClient.builder(httpHost);
for
(
int
i
=
0
;
i
<
urls
.
length
;
i
++)
{
final
String
[]
parts
=
StringUtils
.
split
(
urls
[
i
],
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
httpHosts
[
i
]=
httpHost
;
}
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHosts
);
builder
.
setHttpClientConfigCallback
(
new
RestClientBuilder
.
HttpClientConfigCallback
()
{
@Override
public
HttpAsyncClientBuilder
customizeHttpClient
(
HttpAsyncClientBuilder
httpClientBuilder
)
{
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-knowledgebase-biz/src/main/java/com/yeejoin/amos/knowledgebase/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
knowledgebase
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-latentdanger-biz/pom.xml
View file @
3b5011f6
...
...
@@ -113,6 +113,11 @@
<groupId>
org.liquibase
</groupId>
<artifactId>
liquibase-core
</artifactId>
</dependency>
<dependency>
<groupId>
io.lettuce
</groupId>
<artifactId>
lettuce-core
</artifactId>
</dependency>
</dependencies>
</project>
amos-boot-module/amos-boot-module-biz/amos-boot-module-latentdanger-biz/src/main/java/com/yeejoin/amos/latentdanger/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
latentdanger
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-maintenance-biz/pom.xml
View file @
3b5011f6
...
...
@@ -118,6 +118,11 @@
<groupId>
cn.jpush.api
</groupId>
<artifactId>
jpush-client
</artifactId>
</dependency>
<dependency>
<groupId>
io.lettuce
</groupId>
<artifactId>
lettuce-core
</artifactId>
</dependency>
</dependencies>
</project>
amos-boot-module/amos-boot-module-biz/amos-boot-module-maintenance-biz/src/main/java/com/yeejoin/amos/maintenance/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
maintenance
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-patrol-biz/pom.xml
View file @
3b5011f6
...
...
@@ -108,6 +108,11 @@
<groupId>
org.liquibase
</groupId>
<artifactId>
liquibase-core
</artifactId>
</dependency>
<dependency>
<groupId>
io.lettuce
</groupId>
<artifactId>
lettuce-core
</artifactId>
</dependency>
</dependencies>
</project>
amos-boot-module/amos-boot-module-biz/amos-boot-module-patrol-biz/src/main/java/com/yeejoin/amos/patrol/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
patrol
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-supervision-biz/pom.xml
View file @
3b5011f6
...
...
@@ -163,5 +163,10 @@
<artifactId>
poi
</artifactId>
<version>
4.0.1
</version>
</dependency>
<dependency>
<groupId>
io.lettuce
</groupId>
<artifactId>
lettuce-core
</artifactId>
</dependency>
</dependencies>
</project>
amos-boot-module/amos-boot-module-biz/amos-boot-module-supervision-biz/src/main/java/com/yeejoin/amos/supervision/config/RedisClusterConfig.java
0 → 100644
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
supervision
.
config
;
import
com.yeejoin.amos.boot.biz.config.RedisConfigProperties
;
import
io.lettuce.core.ClientOptions
;
import
io.lettuce.core.cluster.ClusterClientOptions
;
import
io.lettuce.core.cluster.ClusterTopologyRefreshOptions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.connection.RedisClusterConfiguration
;
import
org.springframework.data.redis.connection.RedisConnectionFactory
;
import
org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration
;
import
org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory
;
import
java.time.Duration
;
@Configuration
public
class
RedisClusterConfig
{
@Autowired
private
RedisConfigProperties
redisConfigProperties
;
@Bean
@ConditionalOnProperty
(
name
=
"spring.redis.mode"
,
havingValue
=
"cluster"
)
public
RedisConnectionFactory
redisConnectionFactory
()
{
// 开启自适应集群拓扑刷新和周期拓扑刷新,不开启相应槽位主节点挂掉会出现服务不可用,直到挂掉节点重新恢复
ClusterTopologyRefreshOptions
clusterTopologyRefreshOptions
=
ClusterTopologyRefreshOptions
.
builder
()
.
enableAllAdaptiveRefreshTriggers
()
// 开启自适应刷新,自适应刷新不开启,Redis集群变更时将会导致连接异常
.
adaptiveRefreshTriggersTimeout
(
Duration
.
ofSeconds
(
30
))
//自适应刷新超时时间(默认30秒),默认关闭开启后时间为30秒
.
enablePeriodicRefresh
(
Duration
.
ofSeconds
(
20
))
// 默认关闭开启后时间为60秒 ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD 60 .enablePeriodicRefresh(Duration.ofSeconds(2)) = .enablePeriodicRefresh().refreshPeriod(Duration.ofSeconds(2))
.
build
();
ClientOptions
clientOptions
=
ClusterClientOptions
.
builder
()
.
topologyRefreshOptions
(
clusterTopologyRefreshOptions
)
.
build
();
// 客户端读写分离配置
LettuceClientConfiguration
clientConfig
=
LettuceClientConfiguration
.
builder
()
.
clientOptions
(
clientOptions
)
.
build
();
RedisClusterConfiguration
redisClusterConfiguration
=
new
RedisClusterConfiguration
(
redisConfigProperties
.
getCluster
().
getNodes
());
return
new
LettuceConnectionFactory
(
redisClusterConfiguration
,
clientConfig
);
}
}
amos-boot-system-jcs/src/main/resources/application-dev.properties
View file @
3b5011f6
...
...
@@ -16,13 +16,14 @@ spring.redis.password=1234560
## ES properties:
biz.elasticsearch.address
=
172.16.11.201
spring.
data.elasticsearch.cluster-name
=
elasticsearch
spring.data.elasticsearch.cl
uster-nodes
=
${biz.elasticsearch.address}:93
00
spring.
elasticsearch.rest.uris
=
http://${biz.elasticsearch.address}:92
00
spring.data.elasticsearch.repositories.enabled
=
true
spring.
elasticsearch.rest.uris
=
http://127.0.0.1:9201,http://127.0.0.1:9202,http://127.0.0.1:9203
spring.data.elasticsearch.cl
ient.reactive.connection-timeout
=
30
00
spring.
data.elasticsearch.client.reactive.socket-timeout
=
30
00
elasticsearch.username
=
elastic
elasticsearch.password
=
123456
## emqx properties:
emqx.clean-session
=
true
emqx.client-id
=
${spring.application.name}-${random.int[1024,65536]}
...
...
amos-boot-system-knowledgebase/src/main/resources/application-dev.properties
View file @
3b5011f6
...
...
@@ -38,9 +38,13 @@ eureka.instance.metadata-map.management.api-docs=http://localhost:${server.port}
#ES
spring.data.elasticsearch.cluster-name
=
elasticsearch
spring.data.elasticsearch.cluster-nodes
=
39.100.239.237:9300
spring.elasticsearch.rest.uris
=
http://39.100.239.237:9200
spring.data.elasticsearch.repositories.enabled
=
true
spring.elasticsearch.rest.uris
=
http://127.0.0.1:9201,http://127.0.0.1:9202,http://127.0.0.1:9203
spring.data.elasticsearch.client.reactive.connection-timeout
=
3000
spring.data.elasticsearch.client.reactive.socket-timeout
=
3000
elasticsearch.username
=
elastic
elasticsearch.password
=
123456
#emqx v4.0
...
...
@@ -74,5 +78,3 @@ amos.feign.gennerator.feign-dir=C:/Users/Administrator/IdeaProjects/knowledge-ba
file.url
=
http://39.98.45.134:9000/
elasticsearch.username
=
elastic
elasticsearch.password
=
123456
\ No newline at end of file
amos-boot-system-tzs/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/entity/ESAlertCalled.java
View file @
3b5011f6
...
...
@@ -22,7 +22,7 @@ import java.util.Date;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"tzs"
,
type
=
"tzsAlertCalled"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"tzs"
,
type
=
"tzsAlertCalled"
,
shards
=
3
,
replicas
=
1
)
public
class
ESAlertCalled
{
/** 主键 */
...
...
amos-boot-system-tzs/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/entity/EsCylinder.java
View file @
3b5011f6
...
...
@@ -15,7 +15,7 @@ import org.springframework.data.elasticsearch.annotations.GeoPointField;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"cylinder"
,
replicas
=
0
)
@Document
(
indexName
=
"cylinder"
,
shards
=
3
,
replicas
=
1
)
public
class
EsCylinder
{
/**
...
...
amos-boot-system-tzs/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/entity/EsElevator.java
View file @
3b5011f6
...
...
@@ -15,7 +15,7 @@ import org.springframework.data.elasticsearch.annotations.GeoPointField;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"elev"
,
type
=
"tzsElevator"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"elev"
,
type
=
"tzsElevator"
,
shards
=
3
,
replicas
=
1
)
public
class
EsElevator
{
...
...
amos-boot-system-tzs/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/config/ElasticSearchClientConfig.java
View file @
3b5011f6
...
...
@@ -33,12 +33,28 @@ public class ElasticSearchClientConfig {
final
CredentialsProvider
credentialsProvider
=
new
BasicCredentialsProvider
();
credentialsProvider
.
setCredentials
(
AuthScope
.
ANY
,
new
UsernamePasswordCredentials
(
username
,
password
));
try
{
String
url
=
uris
.
replace
(
"http://"
,
""
);
final
String
[]
parts
=
StringUtils
.
split
(
url
,
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHost
);
String
url
=
uris
.
replace
(
"http://"
,
""
);
String
[]
urls
=
url
.
split
(
","
);
HttpHost
[]
httpHosts
=
new
HttpHost
[
urls
.
length
];
try
{
// String url = uris.replace("http://", "");
// final String[] parts = StringUtils.split(url, ":");
// HttpHost httpHost = new HttpHost(parts[0], Integer.parseInt(parts[1]), "http");
// RestClientBuilder builder = RestClient.builder(httpHost);
for
(
int
i
=
0
;
i
<
urls
.
length
;
i
++)
{
final
String
[]
parts
=
StringUtils
.
split
(
urls
[
i
],
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
httpHosts
[
i
]=
httpHost
;
}
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHosts
);
builder
.
setHttpClientConfigCallback
(
new
RestClientBuilder
.
HttpClientConfigCallback
()
{
@Override
public
HttpAsyncClientBuilder
customizeHttpClient
(
HttpAsyncClientBuilder
httpClientBuilder
)
{
...
...
@@ -46,6 +62,7 @@ public class ElasticSearchClientConfig {
return
httpClientBuilder
.
setDefaultCredentialsProvider
(
credentialsProvider
);
}
});
builder
.
setRequestConfigCallback
(
new
RestClientBuilder
.
RequestConfigCallback
()
{
// 该方法接收一个RequestConfig.Builder对象,对该对象进行修改后然后返回。
@Override
...
...
amos-boot-utils/amos-boot-utils-jpush/src/main/java/com/yeejoin/amos/JpushApplication.java
View file @
3b5011f6
...
...
@@ -33,7 +33,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
@EnableFeignClients
@EnableAsync
@EnableEurekaClient
@ComponentScan
({
"com.yeejoin.amos"
})
@ComponentScan
({
"com.yeejoin.amos"
,
"springfox.documentation.schema"
})
public
class
JpushApplication
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
JpushApplication
.
class
);
...
...
amos-boot-utils/amos-boot-utils-jpush/src/main/java/com/yeejoin/amos/jpush/config/WebSecurityConfig.java
View file @
3b5011f6
package
com
.
yeejoin
.
amos
.
jpush
.
config
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.security.config.annotation.web.builders.HttpSecurity
;
import
org.springframework.security.config.annotation.web.configuration.EnableWebSecurity
;
...
...
@@ -24,5 +25,10 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
.
anyRequest
().
authenticated
().
and
()
.
formLogin
();
}
@Bean
public
HttpFirewall
httpFirewall
()
{
return
new
DefaultHttpFirewall
();
}
}
amos-boot-utils/amos-boot-utils-video/src/main/java/com/yeejoin/amos/video/config/ElasticSearchClientConfig.java
View file @
3b5011f6
...
...
@@ -33,13 +33,28 @@ public class ElasticSearchClientConfig {
@Bean
@Qualifier
(
"highLevelClient"
)
public
RestHighLevelClient
restHighLevelClient
()
{
try
{
String
url
=
uris
.
replace
(
"http://"
,
""
);
final
String
[]
parts
=
StringUtils
.
split
(
url
,
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHost
);
//增加安全配置,使用kibana,勿删
String
url
=
uris
.
replace
(
"http://"
,
""
);
String
[]
urls
=
url
.
split
(
","
);
HttpHost
[]
httpHosts
=
new
HttpHost
[
urls
.
length
];
try
{
// String url = uris.replace("http://", "");
// final String[] parts = StringUtils.split(url, ":");
// HttpHost httpHost = new HttpHost(parts[0], Integer.parseInt(parts[1]), "http");
// RestClientBuilder builder = RestClient.builder(httpHost);
for
(
int
i
=
0
;
i
<
urls
.
length
;
i
++)
{
final
String
[]
parts
=
StringUtils
.
split
(
urls
[
i
],
":"
);
HttpHost
httpHost
=
new
HttpHost
(
parts
[
0
],
Integer
.
parseInt
(
parts
[
1
]),
"http"
);
httpHosts
[
i
]=
httpHost
;
}
RestClientBuilder
builder
=
RestClient
.
builder
(
httpHosts
);
//增加安全配置,使用kibana,勿删
final
CredentialsProvider
credentialsProvider
=
new
BasicCredentialsProvider
();
credentialsProvider
.
setCredentials
(
AuthScope
.
ANY
,
new
UsernamePasswordCredentials
(
username
,
password
));
...
...
amos-boot-utils/amos-boot-utils-video/src/main/java/com/yeejoin/amos/video/entity/EsVideoOriginal.java
View file @
3b5011f6
...
...
@@ -16,7 +16,7 @@ import lombok.experimental.Accessors;
*/
@Data
@Accessors
(
chain
=
true
)
@Document
(
indexName
=
"video"
,
type
=
"videoOriginal"
,
shards
=
1
,
replicas
=
0
)
@Document
(
indexName
=
"video"
,
type
=
"videoOriginal"
,
shards
=
3
,
replicas
=
1
)
public
class
EsVideoOriginal
{
/** 主键 */
@Id
...
...
amos-boot-utils/amos-boot-utils-video/src/main/resources/application-dev.properties
View file @
3b5011f6
...
...
@@ -12,13 +12,14 @@ spring.redis.host=172.16.10.85
spring.redis.port
=
6379
spring.redis.password
=
amos2019Redis
## ES properties:
biz.elasticsearch.address
=
172.16.10.66
spring.
data.elasticsearch.cluster-name
=
elasticsearch
spring.data.elasticsearch.cl
uster-nodes
=
${biz.elasticsearch.address}:93
00
spring.
elasticsearch.rest.uris
=
http://${biz.elasticsearch.address}:92
00
spring.data.elasticsearch.repositories.enabled
=
true
spring.
elasticsearch.rest.uris
=
http://127.0.0.1:9201,http://127.0.0.1:9202,http://127.0.0.1:9203
spring.data.elasticsearch.cl
ient.reactive.connection-timeout
=
30
00
spring.
data.elasticsearch.client.reactive.socket-timeout
=
30
00
elasticsearch.username
=
elastic
elasticsearch.password
=
123456
##biz custem properties
biz.hk.video.url
=
http://11.11.16.12:9017/artemis-web/debug
biz.hk.video.APPkey
=
25907430
...
...
pom.xml
View file @
3b5011f6
...
...
@@ -77,7 +77,7 @@
<dependency>
<groupId>
org.redisson
</groupId>
<artifactId>
redisson
</artifactId>
<version>
3.
8.2
</version>
<version>
3.
16.1
</version>
</dependency>
<dependency>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment