..
2024-09-12 02:38:17 +00:00
2024-07-19 08:08:39 +00:00
2024-07-23 02:26:04 +00:00
2024-07-19 08:08:39 +00:00
2024-08-21 07:10:43 +00:00
2024-12-18 10:10:25 +00:00
2024-12-25 10:08:08 +00:00
2024-12-18 10:10:25 +00:00
2025-05-15 18:43:27 +08:00

OpenIM Configuration File Descriptions and Common Configuration Modifications

External Component Configurations

Configuration File Description
kafka.yml Configuration for Kafka username, password, address, etc.
redis.yml Configuration for Redis password, address, etc.
minio.yml Configuration for MinIO username, password, address, etc.
mongodb.yml Configuration for MongoDB username, password, address, etc.
discovery.yml Service discovery and etcd credentials and address.
Configuration File Description
log.yml Configuration for logging levels and storage directory
notification.yml Event notification settings (e.g., add friend, create group)
share.yml Common settings for all services (e.g., secrets)
webhooks.yml Webhook URLs and related settings
local-cache.yml Local cache settings (generally do not modify)
openim-rpc-third.yml openim-rpc-third listen IP, port, and object storage settings
openim-rpc-user.yml openim-rpc-user listen IP and port settings
openim-api.yml openim-api listen IP, port, and other settings
openim-crontask.yml openim-crontask scheduled task settings
openim-msggateway.yml openim-msggateway listen IP, port, and other settings
openim-msgtransfer.yml Settings for openim-msgtransfer service
openim-push.yml openim-push listen IP, port, and offline push settings
openim-rpc-auth.yml openim-rpc-auth listen IP, port, token validity settings
openim-rpc-conversation.yml openim-rpc-conversation listen IP and port settings
openim-rpc-friend.yml openim-rpc-friend listen IP and port settings
openim-rpc-group.yml openim-rpc-group listen IP and port settings
openim-rpc-msg.yml openim-rpc-msg listen IP and port settings
Configuration File Description
prometheus.yml Prometheus configuration
instance-down-rules.yml Alert rules
alertmanager.yml Alertmanager configuration
email.tmpl Email alert template
grefana-template/Demo.json Default Grafana dashboard

Common Configuration Modifications

Configuration Item Configuration File
Configure MinIO as object storage (focus on the externalAddress field) minio.yml
Adjust log level and number of log files log.yml
Enable or disable friend verification when sending messages openim-rpc-msg.yml
OpenIMServer secret share.yml
Configure OSS, COS, AWS, or Kodo as object storage openim-rpc-third.yml
Multi-end mutual kick strategy and max concurrent connections per gateway openim-msggateway.yml
Offline message push configuration openim-push.yml
Configure webhooks for callback notifications (e.g., before/after message send) webhooks.yml
Whether new group members can view historical messages openim-rpc-group.yml
Token expiration time settings openim-rpc-auth.yml
Scheduled task settings (e.g., how long to retain messages) openim-crontask.yml

Starting Multiple Instances of a Service and Maximum File Descriptors

To start multiple instances of an OpenIM service, simply add the corresponding port numbers and modify the start-config.yml file in the projects root directory, then restart the service. For example, to start 2 instances of openim-rpc-user:

rpc:
  registerIP: ''
  listenIP: 0.0.0.0
  ports: [ 10110, 10111 ]

prometheus:
  enable: true
  ports: [ 20100, 20101 ]

Modifystart-config.yml:

serviceBinaries:
  openim-rpc-user: 2

To set the maximum number of open file descriptors (typically one per online user):

maxFileDescriptors: 10000