REQ-3345: 设置群上限

This commit is contained in:
yanglin 2025-02-06 10:58:24 +08:00
parent f18d4a025a
commit 22c31ef7bb
3 changed files with 7 additions and 4 deletions

View File

@ -1,6 +1,7 @@
package cn.axzo.im.group; package cn.axzo.im.group;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.cloud.context.config.annotation.RefreshScope; import org.springframework.cloud.context.config.annotation.RefreshScope;
@ -10,13 +11,14 @@ import org.springframework.context.annotation.Configuration;
* @author yanglin * @author yanglin
*/ */
@Setter @Setter
@Getter
@RefreshScope @RefreshScope
@Configuration @Configuration
@ConfigurationProperties(prefix = "im-group") @ConfigurationProperties(prefix = "im-group")
public class GroupProps { public class GroupProps {
public int defaultMemberLimit = 499; private int defaultMemberLimit = 499;
public int syncMessageTps = 20; private int syncMessageTps = 20;
@Override @Override
public String toString() { public String toString() {

View File

@ -38,7 +38,8 @@ public class GroupSupport implements GroupLogger {
group.setAvatar(request.getAvatar()); group.setAvatar(request.getAvatar());
group.setMemberCount((long) request.getOwnerAndMembers().size()); group.setMemberCount((long) request.getOwnerAndMembers().size());
Long memberLimit = request.getMemberLimit(); Long memberLimit = request.getMemberLimit();
group.setMemberLimit(memberLimit == null ? groupProps.defaultMemberLimit : memberLimit); group.setMemberLimit(memberLimit == null
? groupProps.getDefaultMemberLimit() : memberLimit);
group.setOwnerAccount(owner); group.setOwnerAccount(owner);
group.setOwnerPersonId(request.getOwner().personIdAsLong()); group.setOwnerPersonId(request.getOwner().personIdAsLong());
group.setCreatePersonId(request.getOwner().personIdAsLong()); group.setCreatePersonId(request.getOwner().personIdAsLong());

View File

@ -125,7 +125,7 @@ public class GroupMessageSyncJob implements InitializingBean {
@Override @Override
public void afterPropertiesSet() { public void afterPropertiesSet() {
tps = groupProps.syncMessageTps; tps = groupProps.getSyncMessageTps();
executor = Executors.newFixedThreadPool( executor = Executors.newFixedThreadPool(
tps + 1, new NamedThreadFactory(GroupMessageSyncJob.class.getName())); tps + 1, new NamedThreadFactory(GroupMessageSyncJob.class.getName()));
} }