Перейти до основного вмісту

Публікації

Показано дописи з липень, 2022

Mongod

Mongod – основний демон-процес (deamon process) в системі MongoDB. Основні параметри команди. Виведення довідкового матеріалу: mongod --help або mongod -h Версія mongod: mongod --version Зміна директорії, де зберігаються файли з даними: mongod --dbpath directory_path По замовчуванню всі дані зберігаються в папці /data/db. За допомогою цього параметра команди mongod можна задати інше місце. Directory path визначає нову папку. Зміна номера порта mongod --port port_number По замовчуванню процес запускається на порту з номером 27017. Запуском команди із цим параметром можна визначити інший порт. Включення обов’язкової автентифікації: mongod –auth Встановлення допустимих IP адрес. mongod --bind_ip localhost,111.111.111.111 Включення підтримки  IPv6 mongod –-ipv6 По замовчуванню підтримка адресації ipv6 відключена. Цей параметр дозволяє включити її. Запуск сервера: mongo Зупинка: use admin db.shutdownServer() exit

The Twelve-Factor App

12-факторні застосунки 12-факторні застосунки - це методологія розробки web-застосунків. Застосовується для різних мов програмування. Власне, самі 12 факторів : I. Кодова база Одна кодова база, що відслідковується в системі контролю версій та має багато розгортань II. Залежності Явно оголошуйте та ізолюйте залежності III. Конфігурація Зберігайте конфігурацію в середовищі виконання IV. Сторонні служби Вважайте сторонні служби (backing services) підключеними ресурсами V. Збірка, реліз, виконання Суворо відокремлюйте етапи збірки та виконання VI. Процеси Запускайте застосунок як один або декілька процесів без збереження внутрішньго стану (stateless) VII. Прив’язка портів Експортуйте сервіси за допомогою прив’язки портів (port binding) VIII. Конкурентність Масштабуйте застосунок за допомогою процесів IX. Утилізовуваність Підвищуйте надійність за допомогою швидкого запуску і коректного вимкнення X. Dev/prod паритет Прагніть максимальної ідентичності development, staging...

Оператор CNOT в квантовому програмуванні

CNOT Оператор (вентиль, гейт) CNOT приймає 2 входи і 2 виходи. Цей вентиль називають контрольованим запереченням (Controlled NOT). CNOT інвертує другий (керований) кубіт тільки, якщо на перший (керуючий) кубіт подано 1: До Після Керуючий кубіт Керований кубіт Керуючий кубіт Керований кубіт 0 0 0 0 0 1 0 1 1 0 1 1 1 1 1 0 Робота оператора схожа на оператор XOR, якщо не враховувати перший біт на виході: XOR Вхід 1 Вхід 2 Виіхід 0 0 0 0 1 1 1 0 1 1 1 0 Приклад реалізації в Strange Program program = new Program(8); Step step0=new Step(); Step step1=new Step(); step0.addGate(new X(3)); step0.addGate(new X(4)); step0.addGate(new X(6)); step0.addGate(new X(7)); step1.addGate(new Cnot(0,1)); step1.addGate(new Cnot(2,3)); step1.addGate(new Cnot(4,5)); step1.addGate(new Cnot(6,7)); program.addStep(step0); program.addStep(step1); QuantumExecutionEnvironment qee = new SimpleQuantumExecutionEnvironment(); Result result = qee.run...

Квантове програмування в Java

Strange Strange - бібліотека для емуляції квантових обчислень на Java. Бібліотека також дозволяє досить просто візуалізувати написану квантову програму за допомогою JavaFX. Підключення бібліотеки При використанні Maven це можна зробити, додавши залежність: org.redfx strange 0.1.3 Написання простої програми Приклад простої програми, код можна помістити прямо в метод main() : Program program = new Program(3); Step s0 = new Step(); s0.addGate(new X(0)); Step s1 =new Step(); s1.addGate(new Hadamard(2)); program.addStep(s0); program.addStep(s1); QuantumExecutionEnvironment qee = new SimpleQuantumExecutionEnvironment(); Result result = qee.runProgram(program); Qubit[] qubits = result.getQubits(); for (Qubit qubit:qubits){ System.out.println(qubit.measure()); } Після запуску програма має видати результат 1 0 0 або 1 0 1 Пояснення програми Створення програми, що буде оперувати 3-ма кубітами: Program program =...