Pawel
примеры видел, да
От GraphQL + appolo оч выигрывает бекенд на чтение. на запись не всё так просто реакт да, с аполло прерасно коннектится в отличие от redux.
Constantine️
поясни вторую часть
Constantine️
про редакс
Constantine️
я не особо понял )
Pawel
connect, mapStateToProps, вот это всё оч напрягает. Ну и он изначально не под редакс-архитектуру заточен со всеми его SCU
Constantine️
:D
Constantine️
да лан, при работе с redux главное понимать, что это KISS
Constantine️
больше кода, больше понимания
Aleksandr
больше кода, больше понимания
с apollo redux тупо не нужен
Pawel
как по мне масштабируется и скейлится на сложность редакс архитектура отвратительно, модульность убивает совсем совсем. Если уж хранить глобальный стейт где-то не в аполло (что само по себе странно), то разве что в mobx, или передавать его по цепочке реакт-компонент
Constantine️
все никак не пощупаю mobx
Pawel
есть обоснованноое подозрение что будушь сильно и приятно удивлён насколько он проще редакса
Constantine️
да, наслышан )
Constantine️
хотя с другой стороны, редакс прост, пока не надо заниматься оптимизацией ) у мобикса по рассказам сразу в вопросе оптимизации окей все )
Alexandr
Секреты куба + консул + vault для хранения конфигов в корп гите
Эм.. не понял про vault для хранения конфигов в гите. Можно подробнее?)
Илья
Эм.. не понял про vault для хранения конфигов в гите. Можно подробнее?)
В гите хранятся конфиги зашифрованные с помощью vault. А при деплое конфига в куб перекладываются в консул
Илья
А другая часть менее чувствительных данных просто в секретах
Andrei
В гите хранятся конфиги зашифрованные с помощью vault. А при деплое конфига в куб перекладываются в консул
Этим вы решаете проблему бэкапа консула? (Ну не проблему, но в один прекрасный день не хочется по ошибке потерять данные всего кластера)
Илья
Илья
Ну и получается что бекапа тоже
Andrei
Хм, интересное решение.
Andrei
В гите просто папки с файлами согласно структуре?
Anonymous
Что угодно из toml, yaml и json И env
И захардкоженных констант
Alexandr
В гите хранятся конфиги зашифрованные с помощью vault. А при деплое конфига в куб перекладываются в консул
Я правильно понимаю что vault может одновременно работать и с гитом и консулом? Т.е. ему можно указать n-стораджей?
Алексей
Блин запарился. gRPC как получить IP:Port клиента на сервере в Intercepore? Откуда его взять?
Алексей
Понятно, что Listen его имеет и скорее всего прокидывает в grpc, но найти не могу
Vasily
он там есть в контексте
Vasily
Peer
Vasily
@mielofon ^
iči
Добрый день. Никто не сталкивался с такой проблемой: использую gorm для записи в mysql, пытаюсь записать данные "12�12" в поле varchar, возникает ошибка "Incorrect string value: '\xD712' for column". То есть похоже, что он пытается распарсить "12"+\xD712, а не "12"+\xD7+"12" (\xD7 === ×). Кто что может посоветовать?
Constantine️
эмодзи пишешь
Constantine️
поменяй кодировку на utf8mb4
Constantine️
не везде значит )
iči
И это не эмодзи
Constantine️
при коннекте пробуй указать этот чарсет
Алексей
он там есть в контексте
Вижу только ":authority":[]string{"127.0.0.1:8082", а это адрес сервера, а не клиента 😞
Constantine️
И это не эмодзи
ну другой юникод символ
iči
ну другой юникод символ
Я написал что это за символ
Constantine️
да не важно это )
Constantine️
поменяй при коннекте кодировку
iči
Он парсит строку неправильно
Constantine️
код?
iči
func parseCSV() { db, err := gorm.Open("mysql", config.Dbconnectionstring) // "dbusr:pass@tcp(127.0.0.1:3306)/db?charset=utf8mb4&parseTime=True&loc=Local" if err != nil { panic(err) } defer db.Close() db.AutoMigrate(&Entry{}) response, err := http.Get("xxx") if err != nil { log.Fatal(err) } defer response.Body.Close() r := csv.NewReader(response.Body) for { record, err := r.Read() if err == io.EOF { break } if err != nil { log.Fatalf("oh no") } e := parseToEntry(record) if db.NewRecord(e) { errs := db.Create(e).GetErrors() if len(errs) > 0 { log.Println(errs, record) } } } }
Constantine️
попробуй у таблицы и БД также utf8mb4 затащить
Constantine️
я пару лет назад с юникод символами сталкивался в mysql в последний раз
Constantine️
то есть сначала попробуй таблицу перевести, попробовать засейвить, а потом БД
Constantine️
по нарастающей
iči
Что значит таблицу перевести?
Constantine️
https://stackoverflow.com/questions/10957238/incorrect-string-value-when-trying-to-insert-utf-8-into-mysql-via-jdbc/10959780#comment51433941_10959780
iči
Сейчас там сопоставление utf8mb4 general ci
iči
У таблицы
Constantine️
а у колонки?
iči
Не указано, видимо по умолчанию
Zver
А если напрямую запросом вставить?
Алексей
Добрый день как написать тест на авторизацию на go подскажите хоть направление
Daniel
Что такое тест на авторизацию?
Anonymous
Добрый день как написать тест на авторизацию на go подскажите хоть направление
func TestAuth(t *testing.T) { myservice, err := myapp.auth(login, pass) if err != nil { // test failed } } Готово!
Алексей
Peer
peer.FromContext решил мою проблему. Thanks!
Anonymous
Хочу попробовать написать многопользовательский чат с шифрованием, чтобы сервер не мог получить переписку
Anonymous
Надо юзать RSA?
Алексей
Посоветуйте книгу для изучения Go
Fedor
https://www.manning.com/books/go-in-practice
Anonymous
Да
Типа блин При отправке сообщения клиенту надо будет для каждого участника чата шифровать данные отдельно?
Anonymous
У каждого же свой паблик ключ
Great
о, народ начинает переезжать с телеграма на самописное =)
Anonymous
🤔🤔🤔
Anonymous
Мне просто не нравится что групповые чаты не шифруются
iči
🤔🤔🤔
Можно паблик ключём зашифровать и передать симметричны мастер-ключ для всей группы