Есть веб-проект, над которым работают несколько людей.В подавляющем числе случаев распространённая ситуация.
Периодически в процессе разработки надо смотреть "что получилось", производить ручное тестирование и так далее. Я сломал голову, пытаясь понять, как это красиво по-современному организовать.Определись с подходящим для проекта и команды git flow.
При коммите (точнее, при пуше) всё собирается докером и запускается контейнер на сервере. Но разработчиков несколько! Как запускать? На разных портах? Тебе 8081, тебе 8082? А ещё есть СУБД, к которой тоже нужен доступ - залезть гразными руками и посмотреть-поправить. Тебе 5432, тебе 5433 и так далее?Моки всякие можно использовать и не лезть базу. Если религиозные ограничения мешают этому, то на сервере баз данных, этих баз можно насоздавать уйму. Хоть по одной под каждый запрос к базе разработчика. Только с кредами главное не запариться.
Потом, бывают ситуации, когда разработчик откладывает задачу-ветку и начинает работать над другой задачей в другой ветке. Что тогда?Если желания наведения порядка на проекте нет, создавай отдельный деплой под каждую ветку.
Резкое отключение питания (если не внезапный kernel panic) с большей вероятностью убьёт файловую систему XFS вообщеОтносится к журналируемым ФС, поэтому вероятность потери есть, но не высокая. При внезапном отключении питания больше вероятность убить диск чем саму ФС.
Нужен ли мне kubernetes?
В кубере привлекает система деплоя "брось dockerfile/docker-compose и забудь",Да конечно, как же. Иногда пока бросишь, забыться хочется.
Договор о непереманивании: можно ли обойти?В отечественном правовом поле нет ничего ни про NCA, ни про NDA. Можно забить, поскольку никаких законов не нарушаешь.
Свичи осуществляют коммутацию подсетей 172.16.1.0/24 и 172.16.2.0/24, в каждой из которых у серверов есть ip-адреса.У тебя коммутаторы L2/L3 и на них настроена маршрутизация на L3? Если так, то надо смотреть на коммутаторах настройки, потому что они являются шарнирами между разными сетями. Если они у тебя работают по L2, тогда доступ у тебя полный.
Имеется в виду не делать своё шифрование поверх UDPЗдесь скорее всего главное не делать своё шифрование. UDP всего лишь транспорт, ему совершенно всё равно какую нагрузку он несёт. RH собирается реализовать поддержку икапсуляции протокола SCTP в UDP. Ты можешь спокойно инкапсулировать TLS в UDP, если хочешь.
В каких случаях стоит GORM использовать?Когда отчаялась работать с каким-то специализированным драйвером к выбранной базе. Ко многим базам есть куча других ORM-в. Некоторые заходят, некоторые просто выворачивают своим синтаксисом или работой (у меня db не передавал в базу кракозябры из UTF, пришлось искать замену)
Время от времени нужно обновлять AMIs используемые в launch templatesЯвный намёк на иммутабельную (неизменяемую) инфраструктуру. Best practice подсказывает, что свежеиспечённый образ должен быть очищен от ненужного и установлено всё необходимое. Затем всё протестировано и проверено.
Подходит ли Terraform для этого?Для развёртывания / обновления с новым AMI? Да.
1. Создать Round Robin на уровне DNSА DNS предполагается на чьей стороне? Твоей или провайдера? Вообще раскидывание DNS запросов по разным каналам никак не влияет на скорость сетевого соединения.
2. Все сетевые запросы дробить между двумя сетевыми точками домаПочти multipath TCP только наоборот)) Ну накромсал ты сетевые пакеты и раскидал их на разные стыки, дальше что? На конечной стороне их же надо в правильном порядке собрать. А они точно придут с разными задержками и потерями.
Интернет работает не быстрее 500 Мб/с, но для раздельных сетевых потоков можно будет получить в сумме 1 Гб/сТам своя арифметика, которая не работает как 0,5 + 0,5 = 1 литр. В твоём случае может быть ADSL наоборот, когда от тебя будут быстро уходить запросы, но ты будешь получать медленные ответы. Потому что протоколы динамической маршрутизации интернет скорее всего будут отдавать ответ по какому-то одному каналу.