MCPcopy Index your code

hub / github.com/chanjarster/artemis-disruptor-miaosha / types & classes

Types & classes86 in github.com/chanjarster/artemis-disruptor-miaosha

ClassApplication
backend/src/main/java/me/chanjar/Application.java:8
ClassApplication
web/src/main/java/me/chanjar/Application.java:10
ClassArtemisJmsConfiguration
jms-base/src/main/java/me/chanjar/jms/base/config/ArtemisJmsConfiguration.java:18
ClassArtemisMessageDtoDupMessageDetectStrategy
适用于Artemis, {@link MessageDto}的消息重复检测策略 <br> https://activemq.apache.org/artemis/docs/1.3.0/duplicate-detection.html#using-duplicate-detection-for-mes
jms-base/src/main/java/me/chanjar/jms/base/utils/ArtemisMessageDtoDupMessageDetectStrategy.java:13
ClassArtemisProperties
jms-base/src/main/java/me/chanjar/jms/base/config/ArtemisJmsConfiguration.java:57
ClassBeanRegisterUtils
jms-base/src/main/java/me/chanjar/jms/base/utils/BeanRegisterUtils.java:8
ClassCommand
数据库操作命令
jms-server/src/main/java/me/chanjar/jms/server/command/infras/Command.java:11
InterfaceCommandBuffer
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandBuffer.java:5
ClassCommandBufferOverflowException
Command缓冲溢出异常
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandBufferOverflowException.java:6
ClassCommandCollector
数据库操作Command收集器
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandCollector.java:10
InterfaceCommandDispatcher
数据库命令分派器, 分派给{@link CommandProcessor}
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandDispatcher.java:6
ClassCommandEvent
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEvent.java:5
ClassCommandEventDbHandler
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEventDbHandler.java:8
ClassCommandEventExceptionHandler
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEventExceptionHandler.java:9
ClassCommandEventFactory
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEventFactory.java:6
ClassCommandEventGcHandler
DbCommandEvent的GC处理器
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEventGcHandler.java:9
ClassCommandEventProducer
jms-server/src/main/java/me/chanjar/jms/server/command/infras/disruptor/CommandEventProducer.java:7
InterfaceCommandExecutor
{@link Command}执行器
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandExecutor.java:6
InterfaceCommandProcessor
{@link Command}处理器
jms-server/src/main/java/me/chanjar/jms/server/command/infras/CommandProcessor.java:6
ClassConf
jms-server/src/main/java/me/chanjar/jms/server/config/OrderInsertProcessorConfiguration.java:92
ClassConf
jms-server/src/main/java/me/chanjar/jms/server/config/ItemAmountUpdateProcessorConfiguration.java:86
ClassConnectionFactoryLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/ConnectionFactoryLifeCycleContainer.java:11
ClassConnectionLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/ConnectionLifeCycleContainer.java:12
ClassDataStartupLoader
启动时的数据加载器
jms-server/src/main/java/me/chanjar/jms/server/dataloader/DataStartupLoader.java:8
ClassDefaultCommandDispatcher
Created by qianjia on 16/5/17.
jms-server/src/main/java/me/chanjar/jms/server/command/infras/DefaultCommandDispatcher.java:12
ClassDisruptorJmsMessageSender
<p> 内部使用Disruptor来单线程的调用{@link Session}和{@link MessageProducer}的方法来发送消息。 </p> <p> 因为使用Disruptor的缘故, 消息的发送是异步的, 也就是说{@link #sendMessage(MessageDto)}方法:
jms-base/src/main/java/me/chanjar/jms/base/sender/disruptor/DisruptorJmsMessageSender.java:33
ClassDisruptorJmsMessageSenderFactory
jms-base/src/main/java/me/chanjar/jms/base/sender/disruptor/DisruptorJmsMessageSenderFactory.java:11
ClassDisruptorLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/DisruptorLifeCycleContainer.java:8
ClassDisruptorProperties
jms-server/src/main/java/me/chanjar/jms/server/config/RequestDisruptorConfiguration.java:84
InterfaceDupMessageDetectStrategy
消息重发检测策略 <br> https://activemq.apache.org/artemis/docs/1.3.0/duplicate-detection.html#using-duplicate-detection-for-message-sending <br>
jms-base/src/main/java/me/chanjar/jms/base/utils/DupMessageDetectStrategy.java:10
ClassItem
商品
jms-server/src/main/java/me/chanjar/jms/server/memdb/Item.java:10
ClassItemAmountUpdateCommand
更新商品库存的命令
jms-server/src/main/java/me/chanjar/jms/server/command/item/ItemAmountUpdateCommand.java:9
ClassItemAmountUpdateCommandBuffer
{@link ItemAmountUpdateCommand}的Buffer <br> 内部存储是一个以{@link ItemAmountUpdateCommand#itemId}为Key的Map <br> 这样做的好处是, 如果有多个相同Key的{@link ItemAmountUpdateCom
jms-server/src/main/java/me/chanjar/jms/server/command/item/ItemAmountUpdateCommandBuffer.java:20
ClassItemAmountUpdateCommandExecutor
jms-server/src/main/java/me/chanjar/jms/server/command/item/ItemAmountUpdateCommandExecutor.java:14
ClassItemAmountUpdateCommandProcessor
Created by qianjia on 16/5/17.
jms-server/src/main/java/me/chanjar/jms/server/command/item/ItemAmountUpdateCommandProcessor.java:9
ClassItemAmountUpdateProcessorConfiguration
jms-server/src/main/java/me/chanjar/jms/server/config/ItemAmountUpdateProcessorConfiguration.java:25
ClassItemDataStartupLoader
启动时,将数据库中的数据,加载到内存中
jms-server/src/main/java/me/chanjar/jms/server/dataloader/ItemDataStartupLoader.java:17
InterfaceItemRepository
商品内存数据库
jms-server/src/main/java/me/chanjar/jms/server/memdb/ItemRepository.java:6
ClassItemRepositoryImpl
jms-server/src/main/java/me/chanjar/jms/server/memdb/ItemRepositoryImpl.java:8
ClassJmsClientConfiguration
jms-client/src/main/java/me/chanjar/jms/client/config/JmsClientConfiguration.java:32
ClassJmsConnectionCloseException
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/ConnectionLifeCycleContainer.java:108
InterfaceJmsMessageSender
JMS消息发送器
jms-base/src/main/java/me/chanjar/jms/base/sender/JmsMessageSender.java:10
ClassJmsObjectLifecycleOrderConstants
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/JmsObjectLifecycleOrderConstants.java:5
ClassJmsServerConfiguration
jms-server/src/main/java/me/chanjar/jms/server/config/JmsServerConfiguration.java:33
ClassMessageConsumerFactory
jms-base/src/main/java/me/chanjar/jms/base/factory/consumer/MessageConsumerFactory.java:5
ClassMessageConsumerLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/MessageConsumerLifeCycleContainer.java:11
ClassMessageConsumerOption
jms-base/src/main/java/me/chanjar/jms/base/factory/consumer/MessageConsumerOption.java:5
ClassMessageConvertUtils
jms-base/src/main/java/me/chanjar/jms/base/utils/MessageConvertUtils.java:11
ClassMessageDto
jms-base/src/main/java/me/chanjar/jms/base/msg/MessageDto.java:7
ClassMessageProducerFactory
jms-base/src/main/java/me/chanjar/jms/base/factory/producer/MessageProducerFactory.java:8
ClassMessageProducerLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/MessageProducerLifeCycleContainer.java:11
ClassMessageProducerOption
jms-base/src/main/java/me/chanjar/jms/base/factory/producer/MessageProducerOption.java:7
InterfaceMiaoShaCommandService
jms-client/src/main/java/me/chanjar/jms/client/command/MiaoShaCommandService.java:6
ClassMiaoShaCommandServiceImpl
jms-client/src/main/java/me/chanjar/jms/client/command/MiaoShaCommandServiceImpl.java:15
ClassMiaoshaRestController
秒杀Rest Controller
web/src/main/java/me/chanjar/MiaoshaRestController.java:16
ClassNettyLifeCycleConfiguration
jms-base/src/main/java/me/chanjar/jms/base/netty/NettyLifeCycleConfiguration.java:9
ClassNettyLifeCycleContainer
解决netty在类似tomcat的container中的时候, 会产生的memory leak的问题<br/> 根据下面两个连接提供的解决方案实现: <ol> <li>https://github.com/relayrides/pushy/issues/29</li> <li>https://git
jms-base/src/main/java/me/chanjar/jms/base/netty/NettyLifeCycleContainer.java:21
ClassOrderInsertCommand
保存订单的命令
jms-server/src/main/java/me/chanjar/jms/server/command/order/OrderInsertCommand.java:8
ClassOrderInsertCommandBuffer
jms-server/src/main/java/me/chanjar/jms/server/command/order/OrderInsertCommandBuffer.java:12
ClassOrderInsertCommandExecutor
jms-server/src/main/java/me/chanjar/jms/server/command/order/OrderInsertCommandExecutor.java:14
ClassOrderInsertCommandProcessor
jms-server/src/main/java/me/chanjar/jms/server/command/order/OrderInsertCommandProcessor.java:6
ClassOrderInsertProcessorConfiguration
jms-server/src/main/java/me/chanjar/jms/server/config/OrderInsertProcessorConfiguration.java:27
ClassPayloadEvent
jms-base/src/main/java/me/chanjar/jms/base/sender/disruptor/PayloadEvent.java:3
ClassPayloadEventProducer
jms-base/src/main/java/me/chanjar/jms/base/sender/disruptor/PayloadEventProducer.java:8
ClassRequestDisruptorConfiguration
jms-server/src/main/java/me/chanjar/jms/server/config/RequestDisruptorConfiguration.java:24
ClassRequestDto
购买商品的请求
jms-msg/src/main/java/me/chanjar/jms/msg/RequestDto.java:9
ClassRequestDtoEvent
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEvent.java:7
ClassRequestDtoEventBusinessHandler
处理业务逻辑
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventBusinessHandler.java:14
ClassRequestDtoEventDbOutputer
将结果RequestDtoEvent的结果输出到数据库
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventDbOutputer.java:13
ClassRequestDtoEventExceptionHandler
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventExceptionHandler.java:9
ClassRequestDtoEventFactory
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventFactory.java:6
ClassRequestDtoEventGcHandler
RequestDtoEvent的GC处理器
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventGcHandler.java:9
ClassRequestDtoEventJmsOutputer
将结果RequestDtoEvent的结果输出到jms的handler
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventJmsOutputer.java:12
ClassRequestDtoEventProducer
jms-server/src/main/java/me/chanjar/jms/server/request/RequestDtoEventProducer.java:7
ClassRequestDtoListener
jms-server/src/main/java/me/chanjar/jms/server/RequestDtoListener.java:16
InterfaceResponseCache
响应结果缓存
jms-client/src/main/java/me/chanjar/jms/client/command/ResponseCache.java:8
ClassResponseCacheImpl
jms-client/src/main/java/me/chanjar/jms/client/command/ResponseCacheImpl.java:11
ClassResponseDto
购买请求的响应结果
jms-msg/src/main/java/me/chanjar/jms/msg/ResponseDto.java:8
ClassResponseJmsMessageListener
jms-client/src/main/java/me/chanjar/jms/client/command/ResponseJmsMessageListener.java:15
ClassSessionFactory
jms-base/src/main/java/me/chanjar/jms/base/factory/session/SessionFactory.java:7
ClassSessionLifeCycleContainer
jms-base/src/main/java/me/chanjar/jms/base/lifecycle/SessionLifeCycleContainer.java:11
ClassSessionOption
jms-base/src/main/java/me/chanjar/jms/base/factory/session/SessionOption.java:5
ClassSimpleJmsMessageSender
jms-base/src/main/java/me/chanjar/jms/base/sender/simple/SimpleJmsMessageSender.java:16
ClassSimpleJmsMessageSenderFactory
jms-base/src/main/java/me/chanjar/jms/base/sender/simple/SimpleJmsMessageSenderFactory.java:9
ClassStartupOrderConstants
程序启动时数据刷新的顺序 <br> 数字越小越靠前 <br> 排在最后的也比JMS的初始化靠前 见 {@link GenericMessageEndpointManager#phase} <br>
jms-server/src/main/java/me/chanjar/jms/server/StartupOrderConstants.java:10
ClassStrongUuidGenerator
jms-base/src/main/java/me/chanjar/jms/base/utils/StrongUuidGenerator.java:7