Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
yangxiujun
/
paidan_demo
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit ba7da3b0
authored
May 05, 2023
by
chamberone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 修复gis,geomertry,district服务启动报错问题
1 parent
b7d0b98f
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
88 additions
and
93 deletions
config-init/scripts/nacos-config-quick.sh
project-district/pom.xml
project-district/src/main/resources/application.yml
project-geometry/pom.xml
project-geometry/src/main/resources/application.yml
project-gis/pom.xml
project-gis/src/main/java/com/dituhui/mp/gis/elasticsearch/utils/EsClientPoolFactory.java
project-gis/src/main/java/com/dituhui/mp/gis/log/MiddlePlatformLoger.java
project-gis/src/main/java/com/dituhui/mp/gis/util/AreaDataset.java
project-gis/src/main/java/com/dituhui/mp/gis/util/MemoryDataTool.java
project-gis/src/main/resources/application.yml
config-init/scripts/nacos-config-quick.sh
View file @
ba7da3b
...
...
@@ -10,6 +10,7 @@ providerConfig=$(cat ../config/project-provider.yaml)
consumerConfig
=
$(
cat ../config/project-consumer.yaml
)
userConfig
=
$(
cat ../config/project-user.yaml
)
gisConfig
=
$(
cat ../config/project-gis.yaml
)
redisConfig
=
$(
cat ../config/redis-config.yaml
)
groupId
=
"project"
curl -X POST
"nacos-server:8848/nacos/v1/cs/configs"
-d
"dataId=datasource-config.yaml&group=
${
groupId
}
&content=
${
datasourceConfig
}
"
#curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=project-storage.yaml&group=${groupId}&content=${storageConfig}"
...
...
@@ -20,4 +21,5 @@ curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=project-gateway.
#curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=project-consumer.yaml&group=${groupId}&content=${consumerConfig}"
curl -X POST
"nacos-server:8848/nacos/v1/cs/configs"
-d
"dataId=project-user.yaml&group=
${
groupId
}
&content=
${
userConfig
}
"
curl -X POST
"nacos-server:8848/nacos/v1/cs/configs"
-d
"dataId=project-gis.yaml&group=
${
groupId
}
&content=
${
gisConfig
}
"
curl -X POST
"nacos-server:8848/nacos/v1/cs/configs"
-d
"dataId=redis-config.yaml&group=
${
groupId
}
&content=
${
redisConfig
}
"
echo
"Nacos config pushed successfully finished"
\ No newline at end of file
project-district/pom.xml
View file @
ba7da3b
...
...
@@ -23,10 +23,6 @@
<dependencies>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-netflix-eureka-client
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-openfeign
</artifactId>
</dependency>
<dependency>
...
...
@@ -52,6 +48,19 @@
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-discovery
</artifactId>
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-config
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-loadbalancer
</artifactId>
</dependency>
<dependency>
<groupId>
com.supermap
</groupId>
<artifactId>
com.supermap.data
</artifactId>
<version>
${smo.version}
</version>
...
...
project-district/src/main/resources/application.yml
View file @
ba7da3b
...
...
@@ -19,6 +19,9 @@ spring:
server-addr
:
nacos-server:8848
group
:
project
file-extension
:
yaml
import-check
:
# no config file
enabled
:
false
# DistrictService es配置
district
:
...
...
project-geometry/pom.xml
View file @
ba7da3b
...
...
@@ -22,10 +22,6 @@
<dependencies>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-netflix-eureka-client
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-openfeign
</artifactId>
</dependency>
<dependency>
...
...
@@ -49,6 +45,19 @@
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-discovery
</artifactId>
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-config
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-loadbalancer
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-context
</artifactId>
</dependency>
...
...
project-geometry/src/main/resources/application.yml
View file @
ba7da3b
...
...
@@ -3,7 +3,7 @@ server:
spring
:
application
:
name
:
geometry
name
:
project-
geometry
serverlet
:
encoding
:
charset
:
utf-8
...
...
@@ -19,3 +19,7 @@ spring:
server-addr
:
nacos-server:8848
group
:
project
file-extension
:
yaml
import-check
:
# no config file
enabled
:
false
project-gis/pom.xml
View file @
ba7da3b
...
...
@@ -32,6 +32,23 @@
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-discovery
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-openfeign
</artifactId>
</dependency>
<dependency>
<groupId>
com.alibaba.cloud
</groupId>
<artifactId>
spring-cloud-starter-alibaba-nacos-config
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-loadbalancer
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-test
</artifactId>
<scope>
test
</scope>
...
...
project-gis/src/main/java/com/dituhui/mp/gis/elasticsearch/utils/EsClientPoolFactory.java
View file @
ba7da3b
package
com
.
dituhui
.
mp
.
gis
.
elasticsearch
.
utils
;
import
com.dituhui.mp.gis.util.SpringUtils
;
import
java.net.InetAddress
;
import
java.net.UnknownHostException
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
import
javax.annotation.PostConstruct
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.math.RandomUtils
;
...
...
@@ -12,12 +18,6 @@ import org.elasticsearch.transport.client.PreBuiltTransportClient;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.PostConstruct
;
import
java.net.InetAddress
;
import
java.net.UnknownHostException
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
/**
* es连接管理
*
...
...
@@ -26,10 +26,8 @@ import java.util.concurrent.TimeUnit;
@Component
public
class
EsClientPoolFactory
{
private
static
final
String
FENDAN_INDEX_NAME
=
"addresstoarea"
;
private
static
int
poolSize
=
1
;
private
static
TransportClient
[]
clients
=
new
TransportClient
[
poolSize
];
private
static
TransportClient
[]
fendanClients
=
new
TransportClient
[
poolSize
];
private
static
final
String
cluster_name
=
"middleplatform-cluster"
;
private
static
final
String
ip
=
"121.37.145.153"
;
private
static
final
int
port
=
9300
;
...
...
@@ -40,12 +38,6 @@ public class EsClientPoolFactory {
@Value
(
"${spring.data.elasticsearch.cluster_nodes:''}"
)
private
String
clusterNodes
;
@Value
(
"${spring.data.elasticsearch.fendan_cluster_name:''}"
)
private
String
fendanClusterName
;
@Value
(
"${spring.data.elasticsearch.fendan_cluster_nodes:''}"
)
private
String
fendanClusterNodes
;
private
ESProperties
esProperties
;
@PostConstruct
...
...
@@ -61,16 +53,6 @@ public class EsClientPoolFactory {
}
else
{
esProperties
.
setClusterNodes
(
clusterNodes
);
}
if
(
StringUtils
.
isBlank
(
clusterName
))
{
esProperties
.
setFendanClusterName
(
cluster_name
);
//没有配置走默认
}
else
{
esProperties
.
setFendanClusterName
(
fendanClusterName
);
}
if
(
StringUtils
.
isBlank
(
clusterNodes
))
{
esProperties
.
setFendanClusterNodes
(
ip
+
":"
+
port
);
//没有配置走默认
}
else
{
esProperties
.
setFendanClusterNodes
(
fendanClusterNodes
);
}
System
.
setProperty
(
"es.set.netty.runtime.available.processors"
,
"false"
);
for
(
int
i
=
0
;
i
<
poolSize
;
i
++)
{
try
{
...
...
@@ -83,16 +65,6 @@ public class EsClientPoolFactory {
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
try
{
TransportClient
fendanClient
=
generateFendanClient
();
while
(
null
==
fendanClient
)
{
TimeUnit
.
SECONDS
.
sleep
(
30
);
fendanClient
=
generateFendanClient
();
}
fendanClients
[
i
]
=
fendanClient
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
// 检查线程
...
...
@@ -113,18 +85,6 @@ public class EsClientPoolFactory {
clients
[
i
]
=
generateClient
();
}
//fendan
TransportClient
fendanClient
=
fendanClients
[
i
];
List
<
DiscoveryNode
>
fendanNodes
=
null
;
try
{
fendanNodes
=
fendanClient
.
connectedNodes
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
if
(
CollectionUtils
.
isEmpty
(
fendanNodes
))
{
System
.
out
.
println
(
"重新连接fendan es"
);
fendanClients
[
i
]
=
generateFendanClient
();
}
}
TimeUnit
.
MINUTES
.
sleep
(
5
);
}
catch
(
Exception
e
)
{
...
...
@@ -136,17 +96,13 @@ public class EsClientPoolFactory {
}
/**
* 获取客户端
,自动区分分单索引(分单索引)
* 获取客户端
*
* @return
*/
public
static
TransportClient
getClient
(
String
index
)
{
if
(
StringUtils
.
equalsIgnoreCase
(
index
,
FENDAN_INDEX_NAME
))
{
return
fendanClients
[
RandomUtils
.
nextInt
(
poolSize
)];
}
else
{
return
clients
[
RandomUtils
.
nextInt
(
poolSize
)];
}
}
private
TransportClient
generateClient
()
throws
NumberFormatException
,
UnknownHostException
{
String
[]
nodes
=
esProperties
.
getClusterNodes
().
split
(
","
);
...
...
@@ -158,36 +114,12 @@ public class EsClientPoolFactory {
String
[]
ipPort
=
node
.
split
(
":"
);
TransportAddress
address
=
null
;
if
(
ipPort
.
length
>
1
&&
StringUtils
.
isNotBlank
(
ipPort
[
1
]))
{
System
.
out
.
println
(
ipPort
[
0
].
trim
()
+
":"
+
ipPort
[
1
].
trim
());
address
=
new
TransportAddress
(
InetAddress
.
getByName
(
ipPort
[
0
].
trim
()),
Integer
.
parseInt
(
ipPort
[
1
].
trim
()));
}
else
{
// 默认端口
System
.
out
.
println
(
ipPort
[
0
].
trim
()
+
":"
+
port
);
address
=
new
TransportAddress
(
InetAddress
.
getByName
(
ipPort
[
0
].
trim
()),
port
);
}
client
.
addTransportAddress
(
address
);
}
}
return
client
;
}
private
TransportClient
generateFendanClient
()
throws
NumberFormatException
,
UnknownHostException
{
String
[]
nodes
=
esProperties
.
getFendanClusterNodes
().
split
(
","
);
Settings
settings
=
Settings
.
builder
().
put
(
"cluster.name"
,
esProperties
.
getFendanClusterName
()).
build
();
TransportClient
client
=
new
PreBuiltTransportClient
(
settings
);
for
(
String
node
:
nodes
)
{
if
(
StringUtils
.
isNotBlank
(
node
))
{
String
[]
ipPort
=
node
.
split
(
":"
);
TransportAddress
address
=
null
;
if
(
ipPort
.
length
>
1
&&
StringUtils
.
isNotBlank
(
ipPort
[
1
]))
{
System
.
out
.
println
(
ipPort
[
0
].
trim
()
+
":"
+
ipPort
[
1
].
trim
());
System
.
out
.
println
(
"es TransportClient connect: "
+
ipPort
[
0
].
trim
()
+
":"
+
ipPort
[
1
].
trim
());
address
=
new
TransportAddress
(
InetAddress
.
getByName
(
ipPort
[
0
].
trim
()),
Integer
.
parseInt
(
ipPort
[
1
].
trim
()));
}
else
{
// 默认端口
System
.
out
.
println
(
ipPort
[
0
].
trim
()
+
":"
+
port
);
System
.
out
.
println
(
"es TransportClient connect: "
+
ipPort
[
0
].
trim
()
+
":"
+
port
);
address
=
new
TransportAddress
(
InetAddress
.
getByName
(
ipPort
[
0
].
trim
()),
port
);
}
client
.
addTransportAddress
(
address
);
...
...
project-gis/src/main/java/com/dituhui/mp/gis/log/MiddlePlatformLoger.java
View file @
ba7da3b
...
...
@@ -10,6 +10,7 @@ import org.slf4j.Logger;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.stereotype.Component
;
import
java.lang.reflect.Field
;
...
...
@@ -33,6 +34,7 @@ public class MiddlePlatformLoger {
/**
* 服务器辅助工具
*/
@Lazy
@Autowired
private
ServerUtils
serverUtils
;
/**
...
...
project-gis/src/main/java/com/dituhui/mp/gis/util/AreaDataset.java
View file @
ba7da3b
...
...
@@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.PostConstruct
;
...
...
@@ -73,6 +74,7 @@ public class AreaDataset {
*/
private
volatile
Datasets
datasets
;
@Lazy
@Autowired
private
MemoryDataTool
memoryDataTool
;
...
...
@@ -80,7 +82,7 @@ public class AreaDataset {
/**
* 数据源初始化
*/
@PostConstruct
//
@PostConstruct
private
synchronized
void
init
()
{
if
(
null
==
datasource
)
{
log
.
info
(
"## start load datasource ...\r\n## "
...
...
project-gis/src/main/java/com/dituhui/mp/gis/util/MemoryDataTool.java
View file @
ba7da3b
...
...
@@ -34,7 +34,7 @@ public class MemoryDataTool {
//用户对应表关系
public
static
final
Map
<
String
,
String
>
MAP_TEAM_DATESET
=
new
HashMap
<>();
@PostConstruct
//
@PostConstruct
public
void
init
()
{
if
(
memoryDataSource
==
null
)
{
...
...
project-gis/src/main/resources/application.yml
View file @
ba7da3b
...
...
@@ -23,18 +23,32 @@ spring:
import
:
-
optional:nacos:project-gis.yaml
-
optional:nacos:datasource-config.yaml
-
optional:nacos:redis-config.yaml
#
- optional:nacos:redis-config.yaml
data
:
elasticsearch
:
cluster_name
:
dituhui-cluster
cluster_nodes
:
10.0.5.40:52000,10.0.5.110:52000,10.0.5.237:52000
fendan_cluster_name
:
dituhui-cluster
fendan_cluster_nodes
:
10.0.5.40:52000,10.0.5.110:52000,10.0.5.237:52000
cluster_nodes
:
10.0.5.40:52000
kafka
:
producer
:
retries
:
0
acks
:
1
value-serializer
:
org.apache.kafka.common.serialization.StringSerializer
bootstrap-servers
:
http://kafka:9092
consumer
:
group-id
:
mpGroup
template
:
default-topic
:
middleplatform-area
redis
:
host
:
redis
port
:
6379
database
:
0
password
:
123456
jedis
:
pool
:
max-active
:
32
min-idle
:
0
max-idle
:
8
max-wait
:
-1
# AreaDataset pg数据库
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment