service:jmx:http-remoting-jmx://<host>:<port>
29 сентября 2016 г.
8 сентября 2016 г.
openssl-dev
sudo apt-get install openssl-dev
не может найти пакеты?
Делайте так:
sudo apt-get install libssl-dev
11 августа 2016 г.
Чем можно заменить JMS?
Для начала, сайт, где можно изучить варианты:
http://queues.io/
http://queues.io/
- Local BlockingQueue (локальная передача данных);
- Apache Camel (channel "seda" = blockingQueue) (локальная передача данных);
- Spring Integration (channels) (локальная передача данных);
- ZookKeeper + Curator (распределенная передача данных);
- Hazelcast;
- Redis (Jedis для Java), простой продюсер и консьюмер, (можно настроить persist, есть локальные очереди на случаи сбоев (rpoplpush)) + можно добавить кластера в для увеличения памяти. Есть репликация;
- ZeroMQ. Обертка над сокетом. Низкоуровневый обмен.
- AMQP with RabbitMQ;
- Amazon SQS. Просто, дорого. Есть драйвер для JMS без драйвера.
- Kafka - самый интересный вариант. Кластеризация с помощью ZooKeeper.
Youtube links:
https://youtu.be/ExjPxDxkmFo?t=324 JMS
https://youtu.be/ExjPxDxkmFo?t=1524 LocalBlockingQueue
https://youtu.be/ExjPxDxkmFo?t=1580 Apache Camel
https://youtu.be/ExjPxDxkmFo?t=1624 Spring Integration
https://youtu.be/ExjPxDxkmFo?t=1674 ZooKeeper + Apache Curator
https://youtu.be/ExjPxDxkmFo?t=1846 Hazelcast (In memory Data Grid)
https://youtu.be/ExjPxDxkmFo?t=2036 Redis (Jedis)
https://youtu.be/ExjPxDxkmFo?t=2463 ZeroMQ
https://youtu.be/ExjPxDxkmFo?t=2602 AMQP WITH RabbitMQ
https://youtu.be/ExjPxDxkmFo?t=2729 Amazon SQS
https://youtu.be/ExjPxDxkmFo?t=2859 Kafka (ZooKeeper inside)/PartitionManagement
Ошибка java.lang.NoSuchFieldError: WRITE_DURATIONS_AS_TIMESTAMPS.
Использую jackson-databind версии 2.8.1.. При деплое вылазит ошибка java.lang.NoSuchFieldError: WRITE_DURATIONS_AS_TIMESTAMPS.
В моем случае проблема возникала из-за того, что в WildFly 8.2 в системных модулях лежит jackson-databind версии 2.4, и при деплое, во время создания ObjectMapper, classLoader этого класса указывал именно на модуль WildFly, а не на зависимость из pom.xml.
Лечится просто:
В boss-deployment-structure.xml просто эексклудим подсистему jaxrc (если она вам конечно не требуется). Это исключит подтягивание заисимостей из модуля при деплое.
<exclude-subsystems>
<subsystem name="jaxrs" />
</exclude-subsystems>
В моем случае проблема возникала из-за того, что в WildFly 8.2 в системных модулях лежит jackson-databind версии 2.4, и при деплое, во время создания ObjectMapper, classLoader этого класса указывал именно на модуль WildFly, а не на зависимость из pom.xml.
Лечится просто:
В boss-deployment-structure.xml просто эексклудим подсистему jaxrc (если она вам конечно не требуется). Это исключит подтягивание заисимостей из модуля при деплое.
<exclude-subsystems>
<subsystem name="jaxrs" />
</exclude-subsystems>
7 августа 2016 г.
Wildfly + HornetQ. JMS. Record is too large to store
Record is too large to store
Актуально для Wildfly 8.2. На более поздних версиях не проверялось.
Данная ошибка возникает в том случае, если входящее сообщение имеет размер более чем размер указанный в настройке journal-file-size, и менее чем указанный min-large-message-size, при включенном персисте (persistence-enabled = true). Настройки в параметрах указываются в байтах.
Вторая причина возникновения этой ошибки - разные настройки на отправителе и получаете сообщений. Дело в том, что параметризует сообщение именно отправитель, и если у него, например, выключен персист (persistence-enabled = false), то все сообщения параметризуются как "обычные" (не large). Получатель считывает первый байт, и таким образом определяет тип сообщения установленный отправителем. Т.е. если отправитель будет помечать все сообщения как "обычные", то получатель будет их обрабатывать как обычные, не зависимо от настроек установленных на получателе. Это значит, что у вас не будет работать настройка min-large-message-size, получатель всегда будет пытаться поместить сообщение в файл журнала. Если сообщение окажется объемом больше размера файла журнала - мы получим Record is too large to store.
2 августа 2016 г.
Amazon S3 java sdk. Подключаемся локально к minio.
https://minio.io/ - это локальный аналог amazon s3.
Все инструкции по его использованию есть на сайте.
Мы имеем amazon s3 java sdk, и хотим применить его локально, без подключения к amazon.
https://docs.minio.io/docs/minio-docker-quickstart-guide
После того как minio запущен нас интересует четыре параметра:
Endpoint: http://172.17.0.2:9000 http://127.0.0.1:9000
AccessKey: GEUV76CPZT9W6LHD27WV
SecretKey: LFtXnspXOcUgZXbgxMb+OfjqedhXMa06zQ4xMQRT
Все инструкции по его использованию есть на сайте.
Мы имеем amazon s3 java sdk, и хотим применить его локально, без подключения к amazon.
Разворачиваем minio
Я делал так как описано здесь:https://docs.minio.io/docs/minio-docker-quickstart-guide
После того как minio запущен нас интересует четыре параметра:
Endpoint: http://172.17.0.2:9000 http://127.0.0.1:9000
AccessKey: GEUV76CPZT9W6LHD27WV
SecretKey: LFtXnspXOcUgZXbgxMb+OfjqedhXMa06zQ4xMQRT
Region: us-east-1
Именно они понадобятся для создания соединения.
Подключение
public class AmazonS3ClientFactoryImpl implements AmazonS3ClientFactory {
private static final String AMAZON_ACCESS_KEY = "GEUV76CPZT9W6LHD27WV";
private static final String AMAZON_SECRET_KEY = "LFtXnspXOcUgZXbgxMb+OfjqedhXMa06zQ4xMQRT";
public static final String REPOSITORY_ENDPOINT = "http://localhost:9000";
public AmazonS3 getAmazonS3Client(){
AWSCredentials credentials = new BasicAWSCredentials(AMAZON_ACCESS_KEY, AMAZON_SECRET_KEY);
ClientConfiguration clientConfiguration = new ClientConfiguration();
AmazonS3 amazonS3Client = new AmazonS3Client(credentials, clientConfiguration);
Region usWest2 = Region.getRegion(Regions.US_EAST_1);
amazonS3Client.setRegion(usWest2);
amazonS3Client.setEndpoint(REPOSITORY_ENDPOINT);
amazonS3Client.setS3ClientOptions(new S3ClientOptions().withPathStyleAccess(true).disableChunkedEncoding());
return amazonS3Client;
}
}
22 июня 2016 г.
jconsole. Wildfly 8. Remote connection failed?
Чтобы удаленный коннект в WildFly заработал, необходимо запустить jconsole в терминале (linux) со следующими параметрами:
jconsole -J-Djava.class.path=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/jconsole.jar:$JBOSS_HOME/bin/client/jboss-cli-client.jar
jconsole -J-Djava.class.path=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/jconsole.jar:$JBOSS_HOME/bin/client/jboss-cli-client.jar
Подписаться на:
Сообщения (Atom)