|  17.04.2025, 13:17 | #1 | 
| Участник | Есть ли настройка , ограничивающая объем возвращаемых данных через get- request 
			
			Есть кастомный REST API сервис , sync,  создан  кем-то несколько лет назад, возвращает stock levels  из D365 .   Стал не возвращать данные, если большой объем данных (там критерий есть в запросе , если их подкрутить так, чтобы выборка была меньше, то все возвращает) Я смотрю, когда он формирует данные на sql, то ничего, вроде. никаких запросов не висит. То есть, проблема ,как я понимаю, имено в сформированном объеме, что обратно отправляет get request, а не долгом офрмировании набора данных Есть ли какие-то настройки, что отвечают за ограничение объема данных Или , может, еще что-то , что может к такому поведению приводить? Спасибо. Надо как всегда очень сильно срочно, поэтому любым идеям буду благодарна, куда посмотреть, пока меня не линчевали на месте. Последний раз редактировалось Lankey; 17.04.2025 в 14:09. | 
|  | 
|  17.04.2025, 15:25 | #2 | 
| Участник | 
			
			Посмотрел бы для начала что получает аксапта на входе: возможно трабла к примеру в длине строки типа данных при приеме типа принимаю данные в 10 тысяч символов в переменную типа Description и тп
		 | 
|  | 
|  17.04.2025, 17:11 | #3 | 
| Участник | 
			
			Здравствуйте. Деталей мало. Есть rest api сервис, ходит в Аксапту. К нему кто-то обращается? Он не отдаёт информацию? Такая проблематика? Код ошибки HTTP какой отдаёт? С превышением времени ожидания отваливается или трафика допустимого? Это всё настраивается при установлении подключения как параметры. | 
|  | 
|  17.04.2025, 18:11 | #4 | 
| Участник | 
			
			Спаибо.  Сторонний сервер отпраляет в D365 get запрос (На стороне d365 создан кастомныйй сервис) Этот сторонний сервер не получает ответа. Они уже установили таймаут в 1 час, но ответа нет. Если выборка меньше(критерии подкручивают), то 200 возвращается и данные Я тестирую в postman. Вижу такую же картину Максимум , что я в ответе от Tier2 смогла получить - 1.75 MB json ответ(внутри 78 294 строк, но строки нерепрезентативно, тк это json) за 3.5 минуты . Если в параметры меняю так, чтобы ответ был чуть побольше(больше данных созвращалось), то часами "крутится" и ответа не возвращает Последний раз редактировалось Lankey; 17.04.2025 в 18:16. | 
|  | 
|  17.04.2025, 21:17 | #5 | 
| Участник | 
			
			Трафик сетевой проверьте в этот момент (пакеты если надо перехватите) - идёт между службами? Если ошибку не получаете - трафик должен идти между ними. Соответственно, исследуйте вопрос качества этого трафика. | 
|  | 
|  18.04.2025, 00:53 | #6 | 
| Участник | 
			
			1) Немного не поняла Вашу идею. Там один ответ формируется (один json response на этот get request). Поэтому, думаю, что то пока json не сформируется, трафика не будет И чем его лучше/удобнее перехватывать? Установила Postman Interceptor extension, подойдет? UPD: Postman Interceptor extension стоит. В tab браузера открыт postman .Запускаю Interceptor, отсылаю через postman запрос, который возвращает 200 и малый объем данных. Не нахожу в Interceptor записей для URL запроса. Почему (( 2) Может быть так, что проблема в формировании Json ? То есть, данные с sql получает, а вот сериализация в json отнимает много времени или ресурсов? 3) Я пытаюсь отловить в Trace parser то, что происходит. То есть, запускаю в браузере Trace и из постмана отправляю сразу запрос. Но почему-то в Trace parser не вижу следов выполнения класса, ответственного за сервис, ни отправляемого им sql запроса. Это нормально? Последний раз редактировалось Lankey; 18.04.2025 в 01:49. | 
|  | 
|  18.04.2025, 11:14 | #7 | 
| Участник | 
			
			Да, коммуникация с БД (если сервис это подразумевает) должна завершиться перед формированием ответа на запрос. Если до этапа коммуникации дело не доходит - подключение у сервиса должно отваливаться по time out. Так понимаю, сервис-слушатель этим и страдает, отсюда и повышение времени таймаута имело место? Postman - другая история. Он, согласно настройкам по умолчанию, ждёт до скончания времён. На каких этапах может возникать проблема с позиции сервиса Аксапты? 
 Цитата: Цитата: А) Аксапта получает запрос; Б) Пытается его обработать. PS Если текущее состояние системы не позволяет пользователям выполнять должностные обязанности и является критичным - можете разбить работы по решению проблемы на 2 задачи: - Выявление и устранение первопричины; - Разбивка 1-го большого запроса на N маленьких (постраничная загрузка / порционирование). PS2 Признаком хорошего тона является не заставлять сторону-потребителя ждать. Если такое необходимо по причине сложности логики работы функции сервиса - используется асинхронное взаимодействие. Последний раз редактировалось Товарищ ♂uatr; 18.04.2025 в 12:36. | 
|  | 
|  23.04.2025, 10:32 | #8 | 
| Участник | 
			
			Upd: не знаю пока, чем история закончится, но я закомментила весь код обработки записей и поставила sleep.  Если sleep превышает 5 минут, но ответ не возвращается в postman Если меньше (4 мин 30 сек), то возвращается. Соответственно, видимо, есть какое-то ограничение. На T2 пока не проверяла, только на VM DEV Предложила то же самое попробовать в T2 или сразу в микрософт отдать вопрос , тк в документации не нахожу настроек или ограничений на 5 минут. Последний раз редактировалось Lankey; 23.04.2025 в 10:42. | 
|  | 
|  24.04.2025, 09:57 | #9 | 
| Участник | Цитата: 
		
			Сообщение от Lankey
			   Upd: Если sleep превышает 5 минут, но ответ не возвращается в postman Если меньше (4 мин 30 сек), то возвращается. Соответственно, видимо, есть какое-то ограничение. На T2 пока не проверяла, только на VM DEV Предложила то же самое попробовать в T2 или сразу в микрософт отдать вопрос , тк в документации не нахожу настроек или ограничений на 5 минут. | 
|  | |
| За это сообщение автора поблагодарили: S.Kuskov (2). | |
|  25.04.2025, 10:23 | #10 | 
| Участник | 
			
			Спасибо. А для T2 D365 это как настраивать?
		 | 
|  |