wat werkt vertragend

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een bedrijf in de omgeving van Utrecht! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans! Je kunt een uitdagende rol gaan vervullen als C#.NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving van Utrecht. Je zult gaan samenwerken met collega's die over de hele wereld verspreid zitten. Dit bedrijf is zeer vooruitstrevend en werkt met de nieuwste technieken. Als C#.NET Developer ga jij je bezig houden met het volgende: Je blijft op de hoogte van

Bekijk vacature »

Mendix Developer

For our client in Amsterdam, we are looking for a Senior Mendix Developer. Company description Our client is an IT Consultancy company who’s been active for 10 years now. With their ambitious team, they are working with different clients in order to help them with analyzing their data and giving advice to them, regarding how they can use their data in the smartest ways, or to make sure that their mobile or web applications are working efficiently. As you get a glimpse of various industries, it is guaranteed that no day will be the same. Job description As a Mendix

Bekijk vacature »

Front-end Developer Magento 2/Wordpress

Voor het aantrekkelijk houden en steeds vernieuwen van de huidige websites en webshops en het meedenken in de marketing zijn wij per direct op zoek naar een ervaren Front-end developer met gedegen kennis van Magento 2 (webshops) en Wordpress (websites). Wat bieden wij jou Mooi salaris! Meteen op contract bij de opdrachtgever! Gezellig, Kempisch bedrijf! 35 uur per week! Auto van de zaak! Wie ben jij Van een front-end developer verwachten wij: Een afgeronde Bachelor ICT opleiding met profiel ICT & Media Design. Dat je in het bezit bent van een Magento 2 professional front-end developer certificaat; Je hebt ruime

Bekijk vacature »

Senior Full Stack developer

Bedrijfsomschrijving tbd Functieomschrijving Full Stack Java Development bij Randstad Groep Nederland (HQ) Er is een vacature in het Corporate Client Solutions (CCS) team. Dit team is met een ander team net begonnen aan het project ‘Grip op Inhuur’. Het doel van dit project is de tevredenheid van onze leveranciers te verhogen en de efficiëntie van onze administratie te verbeteren. Onderdeel daarvan is een ‘Mijn-omgeving’ voor ZZP’ers en leveranciers. Naast dit nieuwe project werkt het team ook aan het onderhoud en verbeteren van een digitaal vacature management systeem waarmee dagelijks vele vacatures worden voorzien. Het team ontwikkelt zo veel mogelijk zelf

Bekijk vacature »

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

NodeJS developer

Functie Als Fullstack developer kom je te werken in het ontwikkelteam. Je bent samen met je collega’s continu bezig om de software uit te breiden, maar hiernaast doe je onderzoek naar de inzet van nieuwe technieken, tools of bijvoorbeeld Machine Learning. Ze willen met hun software echt voorlopen op andere en toegevoegde waarde leveren voor de eindgebruiker. Mede hierom zijn ze erg benieuwd naar iemand zijn persoonlijkheid, of hij graag nieuwe dingen uitzoekt (Google!), en initiatief neemt. Qua technische kennis zoeken ze iemand die goed op de hoogte is van de nieuwste ontwikkelingen, daar zij nu ontwikkelen op NodeJs back-end,

Bekijk vacature »

Front-end Developer

Dit ga je doen Je komt in een DevOps-cultuur te werken waarbij je met je team werkt aan de front-end van diverse brand websites; Het ontwerpen van functionele en grafische ontwerpen die worden geïmplementeerd; Draagt zorg voor het maken van analyses; Je werkt nauw met je collega’s samen en geeft elkaar feedback en suggesties waar nodig; Het uitwerken van vraagstukken die afkomstig zijn van verschillende klanten; Hier ga je werken Deze marktleider op gebied van fietsen en fietservaring is gevestigd in twee provincies, verspreid over meerdere locaties. Jij zult voornamelijk in regio Joure aan de slag gaan. De organisatie doelt

Bekijk vacature »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Software Developer

Functie omschrijving In deze functie ga je aan de slag met het door ontwikkelen van de interne software. Zij maken gebruik van een CRM, wat door de hele organisatie gebruikt wordt. Andere taken: Je gaat het CRM-systeem door middel van PHP verder ontwikkelen; Verder bouw je verschillende API's en koppelingen tussen systemen; Ook ga je collega's ondersteunen bij vragen over de software en applicaties; Deelnemen aan overleggen met het development team; Bij interesse is er de mogelijkheid om junioren te gaan begeleiden. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er

Bekijk vacature »

Java Developer / Sociaal domein

Dit ga je doen Nieuwbouw en doorontwikkeling; Beheer en wanneer nodig onderhoud; Bijdrage leveren in het functioneel- en technisch ontwerptraject; Analyseren van productie verstoringen; Meedenken over vernieuwingen en verbeteringen. Hier ga je werken De organisatie waar jij komt te werken focust zich op software development met een maatschappelijk tintje. De afdeling software ontwikkeling bestaat uit vijf verschillende scrum teams, met allen hun eigen focus gebied. Zo zijn er een aantal teams die zich focussen op specifieke applicaties, maar is er ook een team gericht op projecten. Binnen de organisatie staat innovatie en kwaliteit voorop. Een aantal applicaties draait nog op

Bekijk vacature »

Senior C# Software Ontwikkelaar te Zaandam

Bedrijfsomschrijving Deze werkgever heeft als missie om haar klanten op ICT-gebied volledig te ontzorgen. Ze zijn een ICT bedrijf met een verscheidenheid aan ICT oplossingen waaronder Cloud oplossingen en een groot deel van het werk is gericht op software realisatie. Voor de Enterprise-klanten voert het relatief kleine ontwikkelteam waar jij deel uit van kan gaan maken binnen deze organisatie te Zaandam de grootste opdrachten uit. Niet alleen websites en complexe webapplicaties maar ook mobile apps, web services en complete systeemintegraties! Je moet dan denken aan Dynamics, Sharepoint en Salesforce. Je komt hier terecht in een relatief kleine organisatie met ontzettend

Bekijk vacature »

.NET Developer

Functie omschrijving .NET developer met ervaring gezocht! Voor een softwarebedrijf in de regio Veenendaal zijn wij op zoek naar een .NET developer met een aantal jaar ervaring. Jij bent zowel zelfstandig als in teamverband verantwoordelijk voor het ontwikkelen en verbeteren van bestaande producten. Verder ben je bezig met nieuwbouw van websites, webapplicaties en mobiele applicaties die zowel intern als extern gebruikt worden. Je werkt hierbij nauw samen met andere developer, productmanagers en productspecialisten om zo mooie producten te creëren. Bedrijfsprofiel De organisatie waar je voor gaat werken is een snelgroeiende softwareleverancier en allround dienstverlener. Deze organisatie heeft zowel klanten die

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Moordrecht zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Als developer bouw je in DevOps teams aan enterprise applicaties, nieuwe IOT, Chatbots of AI oplossingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren in dit vakgebied. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij vorig jaar Microsoft Partner of the year geworden.

Bekijk vacature »

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

Pagina: 1 2 3 volgende »

Ozzie PHP

Ozzie PHP

10/01/2013 23:25:00
Quote Anchor link
Hallo mensen,

Ik zou wel eens willen wat tijdens één pagina-aanroep vertragend werkt. Op het moment dat je een pagina-aanroep doet, welke factoren werken dan echt vertragend?

Ik weet dat je bijvoorbeeld niet te veel afzonderlijke css en javascript bestanden moet inladen, en ook niet te veel afzonderlijke images.

Maar wat ik bijvoorbeeld niet weet...

1) hoeveel database aanroepen kun je doen tijdens één pagina-aanroep zonder dat dit vertragend werkt? 1, 5, 10, 20, 100?

2) hoeveel bestanden kun je includen zonder dat dit vertragend werkt? Ik heb wel eens gehoord dat sommige frameworks 100'en bestanden includen?

Ik stel deze vraag vanwege o.a. de volgende reden. Ik heb nu een VPS en de bedoeling is dat daar uiteindelijk meerdere sites op gaan draaien.

Nu zit ik zomaar wat te brainstormen en heb ik het idee om bij iedere pagina-aanroep de domeinnaam (die ik uit de URL filter) door een database te halen en een aantal controles uit te voeren. Bijvoorbeeld of de betreffende website wel of niet geactiveerd is (stel dat een klant bijv. te laat betaalt dan kan ik de domeinnaam deactiveren). Maar ook bijv. om te kijken wat voor type website het is. Stel dat het bijv. een webshop is, dan moet ik andere routes inladen dan wanneer het een 'standaard' website is. Nu vraag ik me af of zo'n controle via de database erg belastend is. Als je dit bij iedere pagina-aanroep doet, zou dat dan vertragend werken? Ik kan ook na de 1e aanroep de gegevens in de Sessie zetten, zodat ik de controle slechts 1x keer per sessie hoef uit te voeren. Alleen ben ik dan wel verplicht om voor iedere pagina-request een sessie aan te maken. Hoe zouden jullie dat doen? Bij iedere pagina-aanroep de database raadplegen, of 1x per sessie maar dan wel altijd een sessie bestand moeten aanmaken?
 
PHP hulp

PHP hulp

28/03/2024 18:07:12
 
Erwin H

Erwin H

10/01/2013 23:31:15
Quote Anchor link
Ozzie PHP op 10/01/2013 23:25:00:
1) hoeveel database aanroepen kun je doen tijdens één pagina-aanroep zonder dat dit vertragend werkt? 1, 5, 10, 20, 100?

Met of zonder indexen op de juiste kolommen? Met of zonder complexe joins? Met of zonder subqueries? Met 10 records in de tabel, of 10.000.000? Begrijp je het punt?

En dan wat echt vertragend werkt, een cURL request uitvoeren.

Tja, je vraag is zo algemeen, daar is in feite geen antwoord op te geven.
 
Ozzie PHP

Ozzie PHP

10/01/2013 23:33:38
Quote Anchor link
Ja, ik snap wel wat je bedoelt. Maar stel dat de indexen goed staan en de queries redelijk simpel zijn (simpele SELECT queries) en de betreffende tabel is maximaal 2000 records?
 
Keizer Webdesign

Keizer Webdesign

10/01/2013 23:37:21
Quote Anchor link
Wat ook vertragend werkt is het aanroepen van afbeelding op een anderen website. Dat is hetzelfde als ik een xml wil in laden met php van een anderen site, dan duurt dat ook lang.
 
Ozzie PHP

Ozzie PHP

10/01/2013 23:58:58
Quote Anchor link
Iemand die meer duidelijkheid kan geven over database aanroepen?
 
Ward van der Put
Moderator

Ward van der Put

11/01/2013 08:09:57
Quote Anchor link
Ozzie PHP op 10/01/2013 23:33:38:
Maar stel dat de indexen goed staan en de queries redelijk simpel zijn (simpele SELECT queries) en de betreffende tabel is maximaal 2000 records?
Dan kun je 150 tot 400 queries per pagina uitvoeren, alleen heb je dat bij 2.000 records vermoedelijk niet nodig. Probeer wel je databases te normaliseren en je queries te optimaliseren (en dan kan ik me niet voorstellen dat je slechts simpele SELECTs hebt).

Het aantal includes is afhankelijk van de hardware (SSD-hosting is in de mode), het besturingssysteem, het bestandssysteem en de directorystructuur. Vanaf ongeveer 100 includes worden afnemende prestaties meetbaar, maar elke extra include is er natuurlijk altijd één meer.

Hier zijn nog wat optimalisaties mogelijk. Vanwege de aanvullende controles zijn include() and require() efficiënter dan include_once() and require_once(). Verder kun je beter volledige paden gebruiken dan relatieve paden (omdat die opgelost moeten worden).

Leuke benchmarks voor van die typische PHP-vragen:

http://www.blueshoes.org/phpBench.php
 
No One

No One

11/01/2013 09:02:14
Quote Anchor link
@Ward en ik maar denken dat ik met mijn servertje met SSD schijven een vreemde eend in de bijt zou zijn :P
 
Ozzie PHP

Ozzie PHP

11/01/2013 13:19:22
Quote Anchor link
Ward, dankjewel voor je reactie!

150 tot 400 queries? Kijk daar heb ik wat aan. Zoveel queries zou ik nooit uitvoeren in 1 pagina-aanroep. Maar ik was vooral erg benieuwd. Toen ik net begon met programmeren, werd er altijd geroepen dat je zo weinig mogelijk database aanroepen moest doen, omdat dat ten koste gaat van de performance. Dus ik had altijd het idee dat als je per pagina-aanroep de database 5 keer zou aanroepen, dat dat dan al vertragend zou gaan werken. Maar dat valt dus weer mee :)

Leuke link trouwens. Wat me opviel was dat bij de allerlaatste test is dat in een vergelijking === sneller is dan ==. Dat verbaast me eigenlijk wel, omdat er bij === toch een extra controle plaatsvindt (op type)? Iemand die dat kan verklaren?
 
Chris PHP

Chris PHP

11/01/2013 13:35:39
Quote Anchor link
@Ozzie,

Het klinkt mij logischer dat === sneller is dan ==. === is 100% exact hetzelfde, waar == niet gevoelig is voor bijvoorbeeld hoofdletters etc. Dus daar kan meer variatie inzitten, dan in een 100% vergelijking.

Bij === is het simpelweg wel of geen match
Bij == zijn meerdere mogelijkheden voor een match

Zie het als kleuren vergelijken.

bij === is groen gewoon groen en is snel te zien
bij == is het groen, maar kan ook licht groen zijn of donkergroen waar dus meer mogelijkheden zijn en dus meer tijd kost.
 
Ward van der Put
Moderator

Ward van der Put

11/01/2013 13:50:21
Quote Anchor link
De meest plausibele verklaring is inderdaad dat type-vergelijkingen sneller zijn dan type-conversies die achter de schermen nodig zijn. De strikte gelijkheid === kan namelijk al direct een false gooien als de typen niet identiek zijn, zónder alle extra interne conversies en vergelijkingen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
if ('1' == true) {
    echo 'Dit wordt uitgevoerd...';
}


if ('1' === true) {
    echo 'Dit wordt niet uitgevoerd...';
}



if (0x02 == '2') {
    echo 'Dit wordt ook weer uitgevoerd...';
}


if (0x02 === '2') {
    echo 'En dit weer niet...';
}

?>
Gewijzigd op 11/01/2013 13:51:38 door Ward van der Put
 
Ozzie PHP

Ozzie PHP

11/01/2013 13:55:37
Quote Anchor link
Ah, dank jullie wel... als je het zo bekijkt is het inderdaad wel weer logisch.

Ik ging uit van het omgekeerde, namelijk

if (2 == 2)
Hier hoeft alleen gecontroleerd te worden of 2 gelijk is aan 2, en er hoeft niet gecontroleerd te worden of het type (in dit geval een int) hetzelfde is. Dat scheelt dus weer een controle. Zo heb ik het altijd gedacht.

Ik gebruikte dus bewust vaker == in plaats van === omdat ik dacht dat dat sneller zou zijn. Om er dus vandaag achter te komen dat het precies omgedraaid is... krijg nou wat :-)
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

11/01/2013 18:28:02
Quote Anchor link
Ozzie PHP op 11/01/2013 13:19:22:
150 tot 400 queries? Kijk daar heb ik wat aan. Zoveel queries zou ik nooit uitvoeren in 1 pagina-aanroep. Maar ik was vooral erg benieuwd. Toen ik net begon met programmeren, werd er altijd geroepen dat je zo weinig mogelijk database aanroepen moest doen, omdat dat ten koste gaat van de performance. Dus ik had altijd het idee dat als je per pagina-aanroep de database 5 keer zou aanroepen, dat dat dan al vertragend zou gaan werken. Maar dat valt dus weer mee :)

Je moet er rekening mee houden dat elke database aanroep een client-server interactie is. Het gaat erom waarmee je het vergelijkt.
Regelmatig zie je dat er queries worden uitgevoerd in while lus op het resultaat uit een andere query, terwijl dit net zo makkelijk in 1 query kan.
Dan krijg je bv het verschil tussen 1 en 21 query's en dat spaart je dus 20 keer de client_server interactie uit.
 
Ozzie PHP

Ozzie PHP

11/01/2013 18:31:29
Quote Anchor link
Thanks voor je toelichting Ger.

Ik snap dat je altijd zo efficiënt moelijk moet omgaan met je code en met database aanroepen. Maar ik vroeg me dus af (zie het onderste stuk in mijn beginpost) of het vertragend werkt als ik bij iedere pagina-aanroep een controle uitvoer, óf dat ik beter 1x een aanroep kan doen en de resultaten opsla in een sessie. Dit laatste houdt dan wel in dat je altijd een sessiebestand moet aanmaken, ongeacht of iemand wel of niet is ingelogd. Wat heeft in dit specifieke geval jouw voorkeur?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

11/01/2013 19:12:14
Quote Anchor link
In jouw voorbeeld zou ik het combineren.
Dus als er gebruiker inlogt een sessie aanmaken, en op pagina's waar gebruikers specifieke gegevens getoond dan gewijzigd kunnen worden die controle uitvoeren.
Zo'n vertraging is hooguit een tiende seconde, dus imo te verwaarlozen.
 
Ozzie PHP

Ozzie PHP

11/01/2013 19:34:20
Quote Anchor link
Maar die controle heeft niet met de gebruiker te maken, maar bijvoorbeeld met het inladen van routes. Stel het is een webshop type xx site, dan moeten de routes voor webshop type xx worden ingeladen. Ik moet bij iedere pagina-aanroep weten wat voor soort website het is.. De vraag is dus of je dit het beste kan doen door bij iedere pagina-aanroep via de database te controleren wat voor site het is, óf dat je het 1x controleert en in sessie zet. Maar in dat laatste geval heb moet er dus wel altijd een sessiebestand worden aangemaakt (ongeacht of je die sessie nog ergens anders voor gebruikt).
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

11/01/2013 20:30:40
Quote Anchor link
Dan heb ik je niet helemaal goed begrepen.
Maar over het algemeen kan je stellen dat het werken met sessies sneller is dan werken met een database (hetgeen absoluut niet wil zeggen dat je de gehele database in een sessie moet zetten :-P), want sessies zijn op bestandsniveau.
 
Ozzie PHP

Ozzie PHP

11/01/2013 20:34:24
Quote Anchor link
Oké... dus jouw keus zou dan het werken met sessies zijn dus.
 
Niels K

Niels K

11/01/2013 21:00:03
Quote Anchor link
Aantal bezoekers heb ik nog niet gezien?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

11/01/2013 21:00:24
Quote Anchor link
Ja en nee.
Het is situatie afhankelijk.
Met andere woorden, er is op jouw algemene vraag geen algemeen antwoord mogelijk.
 
Niels K

Niels K

11/01/2013 21:05:47
Quote Anchor link
Dat klopt, maar wanneer je site / applicatie realiseert waar veel bezoekers verwacht word (Bijvoorbeeld een rebuild van een wat grotere site / webshop) moet daar van te voren wel rekening mee gehouden worden.

Dan kan je alle query's optimaliseren maar dan moet je toch andere technieken gaan toepassen. Of oneindig hardware / geheugen bij prikken. Dat is natuurlijk wel behoorlijk prijzig dus dan kom je al gauw weer uit op een systeempje met loadbalancers en een cachingplatform.

Snap je wat ik bedoel?
 
Ozzie PHP

Ozzie PHP

11/01/2013 21:11:54
Quote Anchor link
Ik snap wat je bedoelt Niels. De sites bestaan nog helemaal niet, dus de bezoekers ook niet :)
Het gaat er mij vooral om waar ik rekening mee moet houden. En in dit specifieke geval is mijn vraag:

Ik wil het type site bepalen zodat het systeem weet welke routes moeten worden ingeladen. Dit type is opgeslagen in de database. Is het nu het slimst om bij iedere pagina-aanroep het type op te halen uit de database, of is het slimmer om het eenmalig (per sessie) op te halen en op te slaan in een sessie? Dan hoef je dus niet bij iedere pagina-aanroep het type uit de database op te vragen, maar het betekent wel dat er altijd een sessie(bestand) wordt aangemaakt (zelfs als je in je applicatie nergens anders sessievariabelen zou gebruiken). Wat is dan de slimste optie? Iedere keer ophalen uit de database, of 1x ophalen en opslaan in sessie (maar dan dus wel altijd een sessie moeten aanmaken)?
 

Pagina: 1 2 3 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.