oorzaak timeout vinden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior PHP developer

Functie Samen met je development team werk je Agile Scrum en met jullie gezamenlijke kennis en ervaring bepalen jullie samen de beste keuze voor techniek en architectuur. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en denkniveau • Je hebt goede kennis en ervaring met PHP • Je bent niet bang voor complexe projecten • Je werkt graag zelfstandig aan applicaties • Je bent altijd nieuwsgierig naar nieuwe

Bekijk vacature »

Fullstack developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie werken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking op de afdeling Software Development! Als Fullstack react.js developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Onderdelen van jouw functie: Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook

Bekijk vacature »

Webshop beheerder / Fullstack developer

Functie omschrijving Wij zijn op zoek naar een full stack developer die zich bezig gaat houden met het uitbreiden en verbeteren van de online webshop. Een onderdeel van jouw werkzaamheden is naast het beheren van de webshop ook om de processen en structuren te stroomlijnen. Ben jij een leergierige en ambitieuze junior developer met technische skills? Ben jij op zoek naar een werkgever die jouw de volledige vrijheid geeft om jezelf tot een volwaardige senior te ontwikkelen? Lees dan snel verder! Werkzaamheden Onderhouden van de webshop (denk aan het bijhouden van de voorraad); Nieuwe functies toevoegen aan de product configurator

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Dordrecht zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

Developer Full Stack

Functie omschrijving Full Stack Developer gezocht! Wij zijn op zoek naar een Full Stack Developer voor een bedrijf in de regio Nijkerk. Je maakt in deze functie onderdeel uit van een groeiend team met een goede ambitie waarbij eenheid, betrokken en overtreffen de belangrijkste kernwaardes zijn. Het bedrijf werkt volgens de AGILE/SCRUM methode, wat je o.a. terug vindt in de tweewekelijkse sprints, retrospectives en een daily standup. Je takenpakket bestaat uit: Bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een Saas applicatie; Bijdragen aan de innovatie van het bedrijf en hun klanten; Het ontwikkelen op de laatste technologie van

Bekijk vacature »

Technisch Applicatie ontwikkelaar

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! In deze functie werk jij voornamelijk aan: Het onderhouden en ontwikkelen van de IT systemen; Het opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werk je aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkel en implementeren je MS PowerApps en Power BI. Bedrijfsprofiel Je komt terecht bij een familiair

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

Experienced Lead Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Delft Vacature ID: 13301 Introductie We are seeking a Lead Java Developer for our team in the area of Delft. You will develop an application used exclusively by the engineers and geologists for site characterizations, which imports raw field and laboratory measurements for further processing, integration, ground modelling, and geotechnical analysis and reporting. The client/server application is entirely written in Java, and the server is hosted in the Amazon cloud, utilizing frameworks such as Spring and Hibernate, and connected to an MS SQL Server RDS instance. There is a trend towards using more

Bekijk vacature »

Medior .NET developer

Functie Jij gaat als Medior .NET ontwikkelaar aan de slag in ons scrumteam met 6 developers die gepassioneerd en actief bezig zijn om onze spelers kwalitatieve en mooie spelervaringen aan te bieden. Als medior .NET developer ga jij werken aan een technisch hoogwaardig platform welke bezoekerspieken verwerkt van tienduizenden tot honderdduizenden gebruikers per minuut! Ons scrumteam werkt in drie wekelijkse sprints en wij beginnen iedere ochtend met een stand-up. Jij werkt bij ons met C# .NET, .NET Core, React.JS, Xamarin, Azure, Docker en Kubernetes. Wij hechten enorm veel waarde aan het leveren van hoogwaardige en kwalitatieve code. Zodra jij de

Bekijk vacature »

Lead Webdeveloper

As Lead Web Developer at KUBUS you are responsible for the implementation design of requirements and the software architecture of the web application and services of BIMcollab. In your role as lead developer you will naturally search for the optimum between the required implementation time, the performance of the application and a fast go-to-market of features, in line with our automated test and release train. Together with the other senior developers in your team you monitor the architecture of the application and you advise the product owner about necessary refactoring to improve the maintainability of the platform. Our development team

Bekijk vacature »

.NET Developer

Functie omschrijving Net afgestudeerd en op zoek naar een leuke baan als developer? Zoek niet verder! Ik heb een functie beschikbaar als back-end developer, bij een leuk familiebedrijf. Je gaat werken met de Microsoft stack en de technieken C# en .NET. Verder maak je gebruik van MVC en Entity framework. SQL kent ook geen geheimen voor jou. Jouw verantwoordelijkheden: Nieuwe maatwerk software bouwen; API koppelingen bouwen; Applicaties en software optimaliseren; Back-end programmeren. Een erg uitdagende functie, met veel vrijheid. Je kan meerdere dagen thuis werken en als je op kantoor werkt wordt de lunch verzorgd. Heb je interesse, reageer dan

Bekijk vacature »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Full stack ontwikkelaar Laravel, Vue.js

Functie Als ontwikkelaar binnen deze organisatie hou jij je voornamelijk met lopende projecten voor de verschillende klanten. Zo bouw je de ene dag aan prijsschifting systemen en de andere dag onderzoek je crawlers en stel je ze zo in dat de data goed binnen komt binnen het systeem. Daarnaast bouw je mee aan dashboards en ben je dus constant bezig met het verbeteren van het platform. Er is een vaste werkwijze, zo werken ze met Trello kaarten en onderverdelen ze deze aan het begin van iedere week onder de developers. Dit wordt door de lead developer gedaan, maar in samenspraak

Bekijk vacature »

Database developer - SQL

Functie omschrijving Kan jij goed overweg met complexe algoritmes en het schrijven van procedures in T-SQL? Heb jij al wat ervaring opgedaan met SQL en vind je het tijd voor de volgende stap? Lees dan snel verder! Dit software bedrijf, gespecialiseerd in de ontwikkeling van logistieke software, is op zoek naar een ervaren SQL database developer. Jouw werkzaamheden zullen onder andere bestaan uit: Je sluit aan bij meetings en brengt het gehele logistieke proces in kaart. Vervolgens ga je als lead developer aan de slag om de klus te klaren. Je stuurt het junior developer team en helpt, zo nodig,

Bekijk vacature »

Pagina: 1 2 volgende »

Veur Heur

Veur Heur

12/09/2024 12:31:48
Quote Anchor link
In een klanten applicatie komt nog wel eens een timeout voor. De maximaal ingestelde execution time van 30 seconden wordt overschreden en het systeem output hiervan een melding. Ik zou graag weten wat op dat moment het proces is dat te lang heeft gestuurd zodat ik kan kijken of dat te versnellen valt of de klant hiervoor kan waarschuwen. Kan ik dat op een of andere manier achterhalen? Ik vind wel "register_shutdown_function" maar ik betwijfel of het dat is. Ophogen van de execution time lijkt me het probleem alleen maar uitstellen.
 
PHP hulp

PHP hulp

23/12/2024 00:49:36
 
- Ariën  -
Beheerder

- Ariën -

12/09/2024 12:44:10
Quote Anchor link
Wat zorgt precies voor die time out? Een externe server waarmee je verbindt?
 
Veur Heur

Veur Heur

12/09/2024 12:45:42
Quote Anchor link
Dat probeer ik nou juist uit te vinden, geen externe server iig.
 
- Ariën  -
Beheerder

- Ariën -

12/09/2024 12:52:08
Quote Anchor link
Misschien een traag reagerende database? Ik raad aan om een hoop tijden en acties te loggen. Als de log ergens ophoudt, of vertraging laat zien, zit je op het goede spoor
 
Veur Heur

Veur Heur

12/09/2024 12:53:42
Quote Anchor link
Is er ook een manier om na de timeout nog een functie uit te voeren?
 
Ivo P

Ivo P

12/09/2024 13:47:33
Quote Anchor link
Je kunt misschien timers inbouwen in je script waarbij je aangeeft:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo 'dit is line '. __LINE__ .' van script ' . __FILE__ ' timing is ' . $x ; ?>


Waarbij $x dat staat voor hoeveel tijd je script inmiddels gespendeerd heeft sinds de start.

Eventueel kun je de timeout ophogen naar meer, bijvoorbeeld 60 sec, om te zien of de timeout veroorzaakt wordt door een proces dat wat te traag is, of dat je mogelijk in een oneindige loop zit.

Maar als er geen goede reden is aan te wijzen, is het ophogen van de limiet omdat het anders niet werkt, geen goed idee.
Als duidelijk is dat je moet connecten met een service die er altijd 10 sec over doet en dat je moet wachten tot een printer fysiek 10 pagina's heeft afgedrukt: ja.
maar wachten omdat een crappy query de database laat zwoegen: dan is het wachten tot nog meer data de volgende limiet bereikt en je nog een keer moet ophogen.
 
Veur Heur

Veur Heur

12/09/2024 13:51:00
Quote Anchor link
Het probleem is dat ik er niet altijd ben om de boel te monitoren. Misschien is het dan ook beter om te gaan doen wat Ariën zegt... Ik zal dan een tabelletje aanleggen met taak, begintijd, eindtijd... Als er geen eindtijd verschijnt, weten we soort van waarop het is vastgelopen, toch?
 
- Ariën  -
Beheerder

- Ariën -

12/09/2024 15:21:15
Quote Anchor link
Dat monitoren doe je toch vanuit een log-bestand. Als je een dagje niet op kantoor/thuis bent, dan bekijk je het toch de volgende dag? Het kan ook in de database, maar als dat de bottleneck is, dan wordt het lastig loggen. Daarom liever in een textbestand.

Misschien helpt Monolog erbij.
https://github.com/Seldaek/monolog/blob/HEAD/doc/01-usage.md
Gewijzigd op 12/09/2024 15:22:17 door - Ariën -
 
Veur Heur

Veur Heur

12/09/2024 15:23:11
Quote Anchor link
Kan ook, ik ga het bekijken.
 

14/09/2024 08:25:20
Quote Anchor link
Er zijn complete methodologieën om problemen op te lossen.

Je moet beginnen bij de exacte tijdstippen wanneer de time-outs voorkomen. Sinds wanneer heb je last van time-outs?
En wat heeft daar nog meer mee te maken? Zijn er andere processen op de server actief?

Om dat te weten kan je achteraf in (performance) logbestanden kijken op die exacte tijdstippen, soms inclusief microseconden. Denk aan de logging van de database, php-fpm en de webserver.
Los van de netwerkverbinding (te veel verkeer) is de enige oorzaak van een I/O time-out dat de server niet tijdig reageert. Dat kan weer twee oorzaken hebben: het ding is te druk of hij wacht expres. Daarvan moet je iets kunnen zien in de logbestanden, anders moet je het logniveau opschroeven tot (= NIET inclusief) DEBUG.

Zodra je er achter bent kan je het probleem oplossen, bijvoorbeeld partitionering van databasetabellen of je queries versnellen met slimmere indices, efficiëntere PHP-code schrijven, meer resources toekennen en/of betere hardware kopen, rate limiting verhogen op de webserver, of een hogere QoS op de netwerkrouter instellen.

Succes ermee.
Gewijzigd op 14/09/2024 08:26:29 door
 
Veur Heur

Veur Heur

14/09/2024 09:01:31
Quote Anchor link
Ik ben begonnen met een log tabel die aan het begin van het script een entry toevoegt met taak + datetime + gebruiker. Helemaal aan het eind van het script wordt een tweede datetime toegevoegd, zo heb ik een begin en een eindtijd en dus de uitvoertijd. Aan het eind van de dag gooi ik automatisch alles weg waarvan de tweede datetime niet null is en zo heb ik de taken die niet helemaal tot het einde komen, maw een timeout hebben gehad. Lijkt me een begin voor het vinden van de oorzaak, althans dat hoop ik. Loopt nu 2 dagen, tabel is leeg, en dat klopt de PHP error log is namelijk ook leeg.
 
- Ariën  -
Beheerder

- Ariën -

14/09/2024 09:37:16
Quote Anchor link
Hoezo geen text-bestand?
 
Veur Heur

Veur Heur

14/09/2024 09:39:59
Quote Anchor link
Omdat de taak een post/array is en dan vind ik een database makkelijker, bovendien is het makkelijker met het toepassen van de einddatum aangezien er meerdere gebruikers zijn en ik zo geen txt bestanden per gebruiker hoef aan te maken.
 
- Ariën  -
Beheerder

- Ariën -

14/09/2024 19:58:27
Quote Anchor link
En wat als de database nou de bottleneck is?
 
Veur Heur

Veur Heur

14/09/2024 20:27:13
Quote Anchor link
Goed punt, maar ik zie ff niet hoe ik in een txt bestand ga bijhouden wanneer een taak begint en eindigt.
 
- Ariën  -
Beheerder

- Ariën -

14/09/2024 21:54:54
Quote Anchor link
Hoe je het in je txt-file opzet, of hoe je het proces schrijft?
 
Veur Heur

Veur Heur

14/09/2024 21:58:05
Quote Anchor link
Beetje van beide eigenlijk aangezien er meerdere mensen tegelijk werken… goed, ik zou per gebruiker een txt bestand kunnen aanmaken natuurlijk.
 

15/09/2024 13:57:05
Quote Anchor link
Geweldige oplossing. In Linux scheid je juist de partities van logging en gegevens, maar je kan dat prima negeren.
Ook kan je in de logging kijken van de processen die al gebruikt, maar je kunt dat ook negeren en het wiel opnieuw uitvinden.
Het is dit 'PHP-denken' dat ik niet lang meer trek..
 
Veur Heur

Veur Heur

15/09/2024 14:01:20
Quote Anchor link
Huh? Is dat een ondertoon?
 
Gabriel Rood

Gabriel Rood

16/09/2024 09:18:51
Quote Anchor link
Ad Fundum op 15/09/2024 13:57:05:
Geweldige oplossing. In Linux scheid je juist de partities van logging en gegevens, maar je kan dat prima negeren.
Ook kan je in de logging kijken van de processen die al gebruikt, maar je kunt dat ook negeren en het wiel opnieuw uitvinden. Maar soms kan het 'wiel opnieuw uitvinden' in spellen als jungliwin interessante resultaten opleveren en zelfs een voordeel opleveren in de competitie.
Het is dit 'PHP-denken' dat ik niet lang meer trek ..


Ik ben het er absoluut mee eens dat het negeren van bestaande oplossingen om “het wiel opnieuw uit te vinden” duidelijk niet de beste aanpak is.
Gewijzigd op 18/09/2024 08:44:40 door Gabriel Rood
 

16/09/2024 21:04:19
Quote Anchor link
Veur Heur op 15/09/2024 14:01:20:
Huh? Is dat een ondertoon?

Het is niet helemaal fair van mij om het expliciet te benoemen, en het is zeker niet persoonlijk bedoeld, maar ik kom het in de PHP-hoek wel erg vaak tegen dat men niet op de hoogte is van hoe dingen (horen te) werken.

Kijk, ongeacht welk script je draait in PHP of in de browser, worden er al de nodige logs gegenereerd op een server. Die zou je moeten kunnen inzien (tenzij je bij een hostingpartij zit waar je niets kan en mag). Als je naar de bestaande logs zou kijken zou je al een stuk beter moeten kunnen zien waar de time-out vandaan komt, en misschien zelfs al wel de oorzaak vinden.

De database (MySQL/MariaDB/PostgreSQL) genereert toegangslogs en foutlogs, net als de Fast Process Manager van PHP (php-fpm) en de webserver (Apache2, nginx, ..). Heb je daar al gekeken voordat je je eigen logging-mechanisme gaat optuigen? Heb je wel voldoende resources toegekend?
Bijvoorbeeld: ik kon een sporadische time-out verhelpen door de instelling van een rate limiter op de webserver te verhogen, waardoor de webserver meer netwerkverkeer afhandelt.

Zelf iets willen bouwen zonder te kijken naar wat er al is, is als een lange touristische weg van A naar B van een X-aantal dagen, terwijl je er ook binnen een uur had kunnen zijn als je de snelweg had genomen. En ik snap zelf niet zo goed waarom zoveel mensen maar niet voor de snelweg (willen) kiezen. Waar is die snelweg dan voor?
Gewijzigd op 16/09/2024 21:06:21 door
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.