Aleksandr
что ты в итоге из этого хочешь получить? Body респонса?
Egor
условие регэкспом типа если пэйдж на *.php редиректим туда (в нашем случае в го, потом в php-fpm)
Egor
я думал он в чистом виде отдает как получил от браузера а походу нифига
Aleksandr
покажи настройку нджинкса касаемо этого
Aleksandr
и код го, который читает из соекта
Egor
ща
Egor
Egor
8888 порт я слушаю на go
Aleksandr
то есть вместо php у тебя го отвечает?
Egor
слушаю через net.Conn.Read()
Egor
я слушаю посередине и отдаю дальше
Dmitriy 😎
Привет! Ребят, сможете подсказать? Использую protobuf через grpc. Задался вопросом как идентифицировать сессию клиента между запросами, пока что только в голове решение – token прописать в каждом request message Есть ли у кого-нибудь другое решение?
Aleksandr
не могу понять: я тупой, или ты делаешь одну из самых дичайших вещей в истории?
Egor
и код го, который читает из соекта
по сути читаю вот так как тут, стандартно https://stackoverflow.com/questions/24339660/read-whole-data-with-golang-net-conn-read
Anonymous
А не проще сделать через nginx proxy, а не через nginx fastcgi?
Egor
А не проще сделать через nginx proxy, а не через nginx fastcgi?
понял о чем ты, но я смотрю на все варианты
Anonymous
понял о чем ты, но я смотрю на все варианты
И это будет быстрее в плане производительности
Egor
хотя я нашел его, я должен буду изменять запрос в туле на go чтобы отдавать php-fpm а так nginx сам его как мы видим "переиначивает"
Aleksandr
по сути читаю вот так как тут, стандартно https://stackoverflow.com/questions/24339660/read-whole-data-with-golang-net-conn-read
про чтение понятно. судя по скрину. тебе приходит ответ от php, там же не реквеста, а только сгенерированный респонс. т.е. nginx -> php -> go -> наверное nginx
Anonymous
Ак он тупо редирект делает, без всякой обработки. А fastcgi хер знает чем напичкан
Egor
Ак он тупо редирект делает, без всякой обработки. А fastcgi хер знает чем напичкан
я понимаю.. но если у тебя стоит движок у сайта на fastcgi то делать то чето надо(
Anonymous
Я если честно ваще не понимаю зачем тут nginx, если уж на то пошло)
Egor
про чтение понятно. судя по скрину. тебе приходит ответ от php, там же не реквеста, а только сгенерированный респонс. т.е. nginx -> php -> go -> наверное nginx
у меня двунаправленный обмен я имею и то что nginx кинул и передаю в php и имею что отдал php и передаю в nginx
Egor
Я если честно ваще не понимаю зачем тут nginx, если уж на то пошло)
ля.. ну по классике.. масштабируемость.. гора взвешенных по памяти вещей.. я не напишу свой серв круче nginx, даже в рамках этой задачи, молчу про мастабируемость
Aleksandr
думаю тебе вот это поможет https://github.com/beberlei/fastcgi-serve/blob/master/fastcgi-serve.go
Aleksandr
и это https://github.com/beberlei/fastcgi-serve/blob/master/fcgiclient/fastcgi.go
Egor
ооо, спасибо щас заценю
Aleksandr
там, как я понял, уже написан парсер fastcgi request/response
Egor
до этого копал вот это, но не прокатило https://github.com/alash3al/xerver/blob/master/xerver.go
Anonymous
Вы бы конечно объяснили, что вы хотите получить, может что и порекомендовали)
Anonymous
А то получается глухой телефон)
Egor
Вы бы конечно объяснили, что вы хотите получить, может что и порекомендовали)
я хочу получить человека посередине между фронтом и бэком который будет дампить трафик в удобном для меня виде (стракты)
Egor
дампить в смысле чтобы анализировать можно было по полям структур
Egor
Я бы вам порекомендовал packetbeat + elk тогда )
прошу ссылочек на прочтение, если можно)
Anonymous
Packetbeat: Network Analytics Using Elasticsearch | Elastic https://www.elastic.co/products/beats/packetbeat
Vasily
через контекст
Anonymous
Это конечно целая инфраструктура получается, но она рабочая
Dmitriy 😎
Vasily Romanov т.е. нужно действовать по такому алгоритму? 1. Клиент шлет запрос 2. Сервер отдает ответ с метадатой (в ней токен?) 3. Клиент шлет последующие запросы с принятой от сервера методатой
Vasily
А, там более сложная цепочка
Vasily
Можно так
Vasily
Вроде там есть tailer-metadata, но я её никогда не пользовался
Vasily
я думал там вариант единичных автономных запросов
Vasily
Хотя если это жестко на логику приложения зашито и там цепочка азпрсоов, токены для которых задаётся сервером - может и в сами запросы унести, вполне
Dmitriy 😎
Просто не хочется запросы наполнять токенами, так как одно клиентское соединение на каждого клиента, хотелось бы просто идентифицировать этого клиента в рамках одного соединения, посмотрю на tailer-metadata
Dmitriy 😎
Спасибо
Ilya
тут есть своя задумка, в данной задаче оно нужно
Посадить дебилов на проект писать обработчики на пыхе чтобы ускорить разработку?
Anton 🇺🇦
GetFileAttributesEx c:\temp: The system cannot find the file specified.
Anton 🇺🇦
как фиксить?
Илья
дампи ошибку, судя по https://golang.org/src/os/stat_windows.go, там будет структура с путём до файла
Nikita
Что-то я запутался, если один пакет, но разные файлы, то нужно экспортировать для использовании в других файлах?
Nikita
как тесты видят не экспортируемые функции?
Oleksii
Видимость на уровне пакета
Nikita
ну пакет main
Nikita
просто я помню было когда у меня method is undefinded, пока экспортировать не начал, при этом пакет то один был
Nikita
https://github.com/edDimensi/testGame/blob/master/game.go#L34
Nikita
https://github.com/edDimensi/testGame/blob/master/player.go#L40
Oleksii
И когда ты вызываешь не экспортируемый метод, то у тебя ошибка?
Nikita
пока не знаю) Я заранее
Nikita
у меня в vs code редактирование символова через раз работает
Nikita
поэтому не рискую лишний раз
Nikita
я вообще правильно ошибку сделал и вызываю ее?
Nikita
@alexsadliak вот сейчас точно ошибка есть
Nikita
Nikita
parsedCommand находится в game.go, а это main_test.go
Oleksii
parsedCommand находится в game.go, а это main_test.go
Ну у тебя в game.go с большой буквы функция
Oleksii
Если внимательно посмотреть :)
Nikita
да
Nikita
бред какой-то
Oleksii
Ну а ты пробуешь вызвать с маленькой